0

目标

计算销售的产品,无论类别如何。

一点说明

我的数据库中有一个名为Categories. 遵循以下结构:

'Category_Id', 'tinyint(3)'
'Category_Name', 'varchar(45)'
'Category_Products_Quantity', 'int(11)'

我的应用程序的所有产品都有一个类别,我将其设置在Products表中 - 引用类别的 id。

如您所见,在我的表中有一个名为Category_Products_Quantity. 此列存储某个类别中的产品数量。要增加或减少产品数量,我有两个触发器:一个是增加;另一个是增加。一减少。

到目前为止,一切都很好,对吧?

问题

当我需要计算在售产品的数量时,就会出现问题。我有第三张表Market_Products,它在各自的市场中存储产品。遵循以下结构:

'Product_Id', 'int(11)'
'Market_Id', 'int(11)'
'Product_Price', 'decimal(10,2)'
'Product_State', 'int(11)'

你能看到Product_State吗?因此,此列负责标记产品是否在销售。“销售”不是一个类别,不像“Bazaar”是一个类别。

我的问题是:在这种情况下,我如何计算Product_State非零的产品?

技术细节

我正在使用 C#.Net 4.0 + MVC 4 + Razor Engine 2 + Entity Framework 5 + MySQL。

不久

我有一个在线商店应用程序。实体框架为我生成了 CRUD。我的应用程序有产品和类别。我可以计算每个类别中有多少产品。每种产品的价格由不同的市场决定。这些市场可以将商品标记为要约。我需要将报价视为一个类别来计算有多少产品是报价。

4

2 回答 2

1

试试这个

    SELECT COUNT(Product_ID) 
    FROM Markets_Products
    WHERE Product_ID IS NOT NULL

我希望它有帮助

于 2013-06-14T18:10:46.503 回答
1

这应该给你你正在寻找的东西。

SELECT COUNT(Product_ID) 
FROM Markets_Products
WHERE Product_ID <> 0

如果NULL可以在您的Product_ID专栏中,那么您需要将您的WHERE子句更改为此

WHERE isNull(Product_ID,'') <> 0
于 2013-06-14T18:13:16.743 回答