简单case函数语法:
是一种多分支的函数,可以根据条件列表的值返回多个可能的结果表达式中的一个。(类似于if,else)
简单 CASE函数:
计算测试表达式,按从上到下的书写顺序将测试表达式的值与每个WHEN子句的简单表达式进行比较。
CASE 测试表达式
WHEN 简单表达式1 THEN 结果表达式1
WHEN 简单表达式2 THEN 结果表达式2
......
WHEN 简单表达式n THEN 结果表达式n
[ ELSE 结果表达式n+1 ]
END
简单case函数示例
例1:计算25岁以上和以下的用户数量
SELECT
CASE
WHEN age < 25 OR age IS NULL THEN '25岁以下'
WHEN age >= 25 THEN '25岁及以上'
END age_cut,COUNT(*)number
FROM user_profile
GROUP BY age_cut

例2:查看不同年龄段的用户明细
select device_id,gender,
(case
when age<20 then '20岁以下'
when age between 20 and 24 then '20-24岁'
when age>=25 then '25岁及以上'
else '其他'
end) as age_cut
from user_profile
SELECT device_id,gender,
IF(age is null,'其他',
IF(age<20,'20岁以下',
IF(age<=24,'20-24岁','25岁及以上'))) age_cut
FROM user_profile
SELECT device_id,gender,'20岁以下' as age_cut
FROM user_profile
where age<20;
union
SELECT device_id,gender,'20-24岁' as age_cut
FROM user_profile
where age>=20 and age<=24;

case搜索函数见
https://blog.csdn.net/cpc784221489/article/details/90300424
本文介绍了SQL中的简单CASE函数,这是一种用于实现多分支逻辑的表达式,可以根据条件返回不同的结果。通过示例展示了如何计算用户年龄分布和查看不同年龄段的用户明细,帮助理解CASE函数在数据处理中的应用。
4154

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



