[英]MySQL: Return the Count of a distinct rows of a group
我無法將計數/分組功能與獨特功能結合起來。 在我的數據庫中,我有一個帶有 orderID 和 burgerId(這是漢堡的類型)的表(BurgerOrders)。
一個訂單可以包含多個漢堡,它可以包含 3 個相同 burgerId 的漢堡或 3 個不同的漢堡。 我正在嘗試找出如何計算 DISTINCT 漢堡的數量。 我可以按任何順序計算總漢堡的數量,但不知道如何使它成為僅不同漢堡的數量。
下面是我嘗試過的查詢,由於語法無效而無法使用,但希望能對我正在嘗試做的事情有所了解。
SELECT orderId, COUNT(*)
FROM BurgerOrders
GROUP BY orderId
HAVING DISTINCT burgerId;
我知道這是導致錯誤的最后一行。 我不確定是否可以使用單個查詢或子查詢。
提前感謝您的幫助!
我認為您正在尋找的是這樣的:
SELECT orderId, COUNT(DISTINCT burgerId)
FROM BurgerOrders
GROUP BY orderId;
HAVING 語法需要一個條件,請參見此處的示例: https://www.w3schools.com/sql/sql_having.asp
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.