您的位置:首頁技術文章
文章詳情頁

MySQL的合計函數這里為什么報錯?

瀏覽:102日期:2022-06-18 11:06:26

問題描述

SELECT COUNT(a.*),AVG(b.ps_score),COUNT(b.*)FROM qdwyc_dd a LEFT JOIN qdwyc_evaluation_score b ON a.dd_num=b.dd_num WHERE a.xc_status=4 and b.ps_type=1

問題解答

回答1:

把a.*和b.*換成各自表里的主鍵回答2:

這樣 count 出來的兩個值相等不太明白你 count 什么建議先把單獨的sql寫出了,再優化

回答3:

COUNT 只能 COUNT(*)、COUNT(字段名),不支持COUNT(別名.*),換成COUNT(`a`.`id`)即可

你這兩句話的COUNT肯定是相等的,估計你想要的結果是,右表在Join為NULL的時候 不計算COUNT吧

第二個COUNT應該是 SUM(IF(`b`.`id` is null, 0, 1))

相關文章:
国产综合久久一区二区三区