通常,您需要顯示數據庫項目的列表以及有關每個項目的特定總數。例如,當您在堆棧溢出中鍵入標題文本時,將出現相關問題列表。該列表顯示了相關條目的標題以及每個標題的單個合計答覆數量。查詢:計算每個項目的多個總計數
我有一個類似的問題,但需要多個聚合。我想在任何的3種格式,具體取決於用戶選擇顯示的項目清單:
- 我的項目的名稱(15總,13由我擁有)
- 我的項目的名稱(15個) (我擁有的13)
- 我的項目的名稱
我的數據庫是:
- 項目:的itemId,ITEMNAME, OWNERID
- 類:CATID,catName
- 地圖:的azazaz,的itemId,CATID
下面的查詢獲取:類別名稱,每個類別
SELECT
categories.catName,
COUNT(map.itemId) AS item_count
FROM categories
LEFT JOIN map
ON categories.catId = map.catId
GROUP BY categories.catName
項ID的數這一個得到:類別名稱,每個類別的這個owner_id的物品id的數量只有
SELECT categories.catName,
COUNT(map.itemId) AS owner_item_count
FROM categories
LEFT JOIN map
ON categories.catId = map.catId
LEFT JOIN items
ON items.itemId = map.itemId
WHERE owner = @ownerId
GROUP BY categories.catId
但是我如何在單個查詢中同時獲取它們? I.e .:類別名稱,每個類別的物品ID計數,僅針對該owner_id的每個類別的物品ID計數
獎勵。我可以選擇只檢索其中任何一個的catId數!= 0。在試圖「WHERE ITEM_COUNT <> 0」,我得到:
MySQL said: Documentation
#1054 - Unknown column 'rid_count' in 'where clause'