表items
跟蹤可以存儲的不同類型的項目。COUNT意外地將行分組
item_type item_name last_stock 1 cake 2010-08-10 2 fruit 2010-08-07 3 soda 2010-08-07 4 water 2010-08-09
表individual_items
跟蹤每個特定項目。
id item_type 1 1 2 2 3 1
我在MySQL查詢:
SELECT i.item_type, i.item_name, COUNT(j.id)
FROM items i
LEFT OUTER JOIN individual_items j
ON i.item_type = j.item_type
GROUP BY j.item_type
然而,COUNT(j.id)
與我的結果擰緊。它似乎將任何已定義的項目分組,但實際上並不存在。
item_type item_name COUNT(j.id) 1 cake 2 2 fruit 1 3 soda 0
我認爲預期的第四行4 water 0
沒有出現因爲COUNT()
不正確分組從LEFT OUTER JOIN
導致子虛烏有行。我怎樣才能解決這個問題?
因爲兩者ITEM_TYPE 3和4 ITEM_TYPE,j.item_type具有相同的值 - NULL。 MySQL將這兩行分組在一起,因爲它們共享一個共同的分組值。 – 2010-08-10 19:35:34