[英]Include zero in min COUNT with GROUP BY in MySQL
在我的查詢輸出 cout 中沒有零“大於零”如何顯示零計數?
SELECT MIN(Q)Z
FROM (SELECT COUNT(DISTINCT`Student_ID`)Q
FROM Examdata
WHERE `Student_ID` in (SELECT `Student_ID` FROM sal3 )
and `Subject_ID`!='104 سلم'
group by exam_dates
) TABLE1;
如果你的意思是你想看看在每一個可能的值exam_dates
,計數student_id數據的不同值的每個數字exam_dates
有一個Student_ID
和Subject_ID
滿足條件...
我們可以將條件測試重新定位到聚合中
例如:
SELECT MIN(t.q) AS Z
FROM ( SELECT COUNT(DISTINCT
CASE
WHEN d.Student_ID IN ( SELECT s.Student_ID FROM sal3 s )
AND d.Subject_ID != '104 سلم'
THEN d.Student_ID
ELSE NULL
END
) AS q
FROM Examdata d
GROUP
BY d.exam_dates
) t
規范非常模糊,沒有示例數據和預期輸出來說明需求,我們只是猜測應該返回什么。
在這個答案的查詢確實有潛力,返回一個零,當有一排Examdata
與exam_dates
值與沒有行exam_dates
值滿足的條件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.