您的位置:首页技术文章
文章详情页

MySQL的合计函数这里为什么报错?

【字号: 日期:2022-06-18 11:06:26浏览:47作者:猪猪

问题描述

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))

相关文章: