CASE函数
1.含义:
CASE a WHEN b THEN c [WHEN d THEN e]* [ELSE f] END
当a = b,返回 c; 当 a = d, 返回 e; 否则 返回 f
2.示例:
emp_sex 表数据:

需求
求出不同部门男女各多少人。结果如下:

select
dept_id,
sum(case sex when '男' then 1 else 0 end) male_count,
sum(case sex when '女' then 1 else 0 end) female_count
from
emp_sex
group by
dept_id;

IF函数
1.含义:
IF(expr1,expr2,expr3)
如果 expr1 为true 返回 expr2; 否则返回 expr3.
2.示例:
emp_sex 表数据:

需求
求出不同部门男女各多少人。结果如下:

select
dept_id,
sum(if(sex='男',1,0)) male_count,
sum(if(sex='女',1,0)) female_count
from
emp_sex
group by
dept_id;

SQL CASE与IF函数在数据统计中的应用
本文通过案例介绍了SQL中的CASE和IF函数在数据统计中的使用方法。使用CASE函数,可以实现根据特定条件返回不同结果,例如在员工性别统计中,按部门分组计算男性和女性人数。同样,IF函数也可达到类似效果,当性别为'男'时计数加1,否则加0,从而得到各部门的男女员工数量。这两种函数在数据分析和报表生成中非常实用。
1万+

被折叠的 条评论
为什么被折叠?



