题解 | #计算25岁以上和以下的用户数量#

计算25岁以上和以下的用户数量

https://www.nowcoder.com/practice/30f9f470390a4a8a8dd3b8e1f8c7a9fa

#if 条件函数
select if (age < 25 or age is null, '25岁以下', '25岁及以上') as age_cut,
count(*) as number
from user_profile
group by age_cut

# case 条件函数
select 
case 
when age < 25 or age is null then  '25岁以下'
when age >=25 then '25岁及以上'
end as age_cut,
count(*) number
from user_profile
group by age_cut
from user_profile
group by age_cut

CASE函数

是一种多分支的函数,可以根据条件列表的值返回多个可能的结果表达式中的一个。

可用在任何允许使用表达式的地方,但不能单独作为一个语句执行。

SELECT 班号,
COUNT(CASE WHEN 性别=‘男’ THEN ‘男’ END) 男生数,
COUNT(CASE WHEN 性别=‘女’ THEN ‘女’ END) 女生数
FROM 学生表 GROUP BY 班号

分为:简单CASE函数搜索CASE函数

CASE 测试表达式
WHEN 简单表达式1 THEN 结果表达式1
WHEN 简单表达式2 THEN 结果表达式2 …
WHEN 简单表达式n THEN 结果表达式n
[ ELSE 结果表达式n+1 ]
END
CASE
WHEN 布尔表达式1 THEN 结果表达式1
WHEN 布尔表达式2 THEN 结果表达式2 …
WHEN 布尔表达式n THEN 结果表达式n
[ ELSE 结果表达式n+1 ]
END

SQL学习 文章被收录于专栏

个人学习的一些小总结

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务