一.返回多个带统计的结果
1.sum(if)
select sum(if(status=1,1,0))as s1, sum(if(status=2,1,0))as s2 from vehicle;
2.count(if)
select count(status=1 or null) as s1,count(status=2 or null) as s2 from vehicle;
注:不要少了后面的or null,因为count只有在遇见null时不计数,前者单引号内不管输入什么值都会统计出所有记录数。加上or NULL ,第一个表达式是true就是不执行or后面的表达式,第一个表达式是false 执行or后面的表达式 。
二.统计结果添加条件判断
SELECT
CASE WHEN 条件1
THEN 结果1
WHEN 条件2
THEN 结果2
ELSE 结果3
END AS ISONLINE
FROM
vehicle