查询问题 - 结果不正确

时间:2010-03-03 07:23:36

标签: sql mysql

我无法解决这个问题。请帮忙。

我有一个名为Product_Information的表。我想计算一个类别和子类别中的产品数量。

这是表格

Product_Id - Product_Title - Product_Sub_Category - Product_Category 
1 ----------------abc------------------XYX------------------X
2 ----------------def------------------XYX------------------Z
3 ----------------ghi------------------XYX------------------X
4 ----------------jkl------------------XYM------------------Z

我希望结果像

result 
------

Product_Category-Product_Sub_Category-count(Product_Id) 
X--------------------XYX-------------------------2
Z--------------------XYX-------------------------1
Z--------------------XYM-------------------------1

(抱歉以不好的方式提供信息)

我使用了以下查询:

Select
Product_Category,
Product_Sub_Category,
count(`Product_Id`)
from product_information 
group by 
Product_Category

但它给了我错误的结果。

3 个答案:

答案 0 :(得分:1)

如果您只需要特定子类别中的产品数量,请使用:

select count(*) from Product_Information 
where Product_Category = ? and Product_Sub_Category = ?

如果你需要所有这些数字,那么你需要像这样分组:

select Product_Category, Product_Sub_Category, count(*) 
from Product_Information 
group by Product_Category, Product_Sub_Category;

答案 1 :(得分:1)

您可以使用分析函数和分区依据,也可以单独执行几个查询(如果您愿意,可以将其组合在一个大型查询中),但以下是基本查询: 按类别计算

Product_Category, count(Product_Id)

from product_information

group by Product_Category

按子类别计算

Product_Category, Product_Sub_Category, count(Product_Id)

from product_information

group by Product_Category, Product_Sub_Category

答案 2 :(得分:0)

更改您的查询:选择

 
Product_Category, Product_Sub_Category, count(Product_Id)

from product_information

group by Product_Category , Product_Sub_Category ;  

它会给你很好的结果。