SELECT COUNT(*)AS cnt FROM info AS i LEFT JOIN user AS u ON i.grpid=u.grpid WHERE i.type=1 GROUP BYi.grpid這樣查詢出來的沒有結(jié)果的數(shù)據(jù)不顯示,想讓沒有結(jié)果的數(shù)據(jù)顯示為0怎么做?
2 回答

幕布斯6054654
TA貢獻(xiàn)1876條經(jīng)驗 獲得超7個贊
瀉藥,沒看出來你這sql哪里會有空值呢?
左連接、where過濾左表字段、groupby也是左表、取count
過濾到的記錄肯定count也不為0
然后說一下空值處理用ifnull(col1,0)即可

哆啦的時光機(jī)
TA貢獻(xiàn)1779條經(jīng)驗 獲得超6個贊
你可以使用 MYSQL IF()Function
SELECT IF(SELECT COUNT(*)AS cnt FROM info AS i LEFT JOIN user AS u ON i.grpid=u.grpid WHERE i.type=1 GROUP BY i.grpid) = 0 , "0", SELECT COUNT(*)AS cnt FROM info AS i LEFT JOIN user AS u ON i.grpid=u.grpid WHERE i.type=1 GROUP BY i.grpid) AS cnt;
以下是IF 的 Syntax
IF(condition, value_if_true, value_if_false)
添加回答
舉報
0/150
提交
取消