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

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

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

select 
case when
age >= 25 then '25岁及以上'
else '25岁以下'end as age_cut,
count(*) as number
from
user_profile
group by 1
#方法二
SELECT "25岁以下" as age_cut,count(*)
FROM user_profile
WHERE  age IS null or age<25 
UNION ALL
SELECT "25岁及以上" as age_cut,count(*)
FROM user_profile
WHERE age>=25



本题根据年龄条件判断,选择对应的类别并计数

方法一:case when

这里有个问题,case when 和group by 的执行顺序是怎样的?还有看到有些题解的Group by后面可以直接用别名age_cut是为什么?

方法二:union all

分别筛选出相应条件的数据,再Union all合并

全部评论

相关推荐

07-29 12:14
门头沟学院 Java
程序员小白条:oppo不用想了,经常看92都挂的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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