mysql case when 查询坑,查询结果不一致

mysql case when 查询坑,查询结果不一致

SELECT
sum(CASE when customer_satisfaction_star < 3 then 1 else 0 end),

sum(CASE when service_quality_star < 3 then 1 else 0 end),
driver_id,
DATE_FORMAT(evaluate_time, ‘%Y’ )
FROM
m_biz_driver_evaluate
where DATE_FORMAT(evaluate_time, ‘%Y’ ) = DATE_FORMAT( NOW() , ‘%Y’ )
GROUP BY driver_id
结果
mysql case when 查询坑,查询结果不一致

SELECT
case when customer_satisfaction_star < 3 then sum(1) else sum(0) end ,
case when service_quality_star < 3 then sum(1) else sum(0) end ,
driver_id,
DATE_FORMAT(evaluate_time, ‘%Y-%m’ )
FROM
m_biz_driver_evaluate
where DATE_FORMAT(evaluate_time, ‘%Y-%m’ ) = DATE_FORMAT( NOW() , ‘%Y-%m’ )
GROUP BY driver_id
结果
mysql case when 查询坑,查询结果不一致
两条case when 查询sql ,两种结果,第二个不对,好像是先case在groupby的