2010-03-03 145 views
0

我在解決此問題時遇到問題。請幫忙。查詢問題 - 結果不正確

我有一個名爲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 

但它給了我錯誤的結果。

+0

你可以編輯你的問題,並提出更好的? – Kangkan 2010-03-03 07:28:07

+0

具體而言,你可以把你的表和查詢放在一個代碼塊中。 – 2010-03-03 07:29:31

+0

你不需要按Product_Category,Product_Sub_Category進行分組,只能在你的問題的代碼中按照Product_Category進行分組。 – 2010-03-03 13:29:34

回答

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; 
+0

問題是,如果我使用查詢2,我會得到一個混合結果。 的意思是我看到不屬於類別的子類別..好心幫助 – 2010-03-03 13:19:09

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 
+0

謝謝人們,我能解決我的問題 – 2010-03-03 13:33:21

0

更改您的查詢:選擇

 
Product_Category, Product_Sub_Category, count(Product_Id) 

from product_information 

group by Product_Category , Product_Sub_Category ; 

它會給你造成的罰款。