原创

mysql 实现select 判断查询

温馨提示:
本文最后更新于 2017年11月02日,已超过 2,356 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

mysql查询A表type字段等于1的num字段合计值和type字段等于2的num字段合计值,

一:使用IF函数 IF(Condition,A,B)

当condition为true时,返回A,否则返回B

sql语句:

select sum(if(type=1,num,0)) as total_1,sum(if(type=2,num,0)) as total_2 from a ;

二:使用case when

语句格式1:CASE WHEN condition THEN   [A]  ELSE [B]END

语句格式2:CASE condition WHEN value THEN   [A] ELSE [B]END

当condition成立时,执行,否则执行B

sql语句:

select sum(CASE WHEN type=1 THEN num ELSE 0 END) as total_1,sum(CASE WHEN type=2 THEN num ELSE 0 END) as total_2 from a ;

或者

select sum(CASE type WHEN 1 THEN num ELSE 0 END) as total_1,sum(CASE type WHEN 2 THEN num ELSE 0 END) as total_2 from a ;
正文到此结束
本文目录