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

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

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

# union all的方式:
select '25岁以下', count(*) from user_profile where age<25 or age is null
union all
select '25岁及以上', count(age) from user_profile where age>=25;

# case when的方式:
select 
case 
    when age<25 or age is null
    then '25岁以下'
    when age>=25
    then '25岁及以上'
end 
AS age_cut,
count(*) 
AS number
from user_profile
group by
case 
    when age<25 or age is null
    then '25岁以下'
    when age>=25
    then '25岁及以上'
end
;

https://www.nowcoder.com/share/jump/9258278581716292999660

union all 是我想到的方法。不过不如case when的写法更加高级。还是case when 的写法更加高级,也优雅。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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