题解 | #高级操作符练习(2)#

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

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

三种写法:

SELECT IF(age<25 OR age IS NULL,'25岁以下','25岁及以上')  as age_cut,COUNT(device_id) as Number
FROM user_profile
GROUP BY age_cut

#方法2:联合查询
SELECT '25岁以下' as age_cut,COUNT(device_id) as Number
FROM user_profile
WHERE age < 25 OR age IS NULL
UNION
SELECT '25岁及以上' age_cut,COUNT(device_id) Number
FROM user_profile
WHERE age >= 25

#方法3:CASE函数
SELECT CASE WHEN age >= 25 THEN '25岁及以上'
            WHEN age < 25 OR age IS NULL THEN '25岁以下'    #此句可直接改为:else '25岁以下'
            END as age_cut,COUNT(*) as number
FROM user_profile
GROUP BY age_cut
全部评论

相关推荐

有担当的灰太狼又在摸鱼:零帧起手查看图片
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务