题解 | #查看不同年龄段的用户明细#

查看不同年龄段的用户明细

https://www.nowcoder.com/practice/ae44b2b78525417b8b2fc2075b557592

题目解析

题目描述

运营团队希望将用户按照年龄划分为三个年龄段:20岁以下20-24岁25岁及以上,并分别查看不同年龄段用户的明细情况。需要从 user_profile 表中取出相应的数据。需要注意的是,若年龄为空,请返回其他

SQL 查询

-- 选择并划分年龄段,输出 device_id、gender 和 age_cut
SELECT 
    device_id, 
    gender, 
    CASE 
        WHEN age IS NULL THEN '其他'               -- 年龄为空,归类为其他
        WHEN age < 20 THEN '20岁以下'              -- 年龄小于20岁
        WHEN age BETWEEN 20 AND 24 THEN '20-24岁'    -- 年龄在20至24岁之间
        WHEN age >= 25 THEN '25岁及以上'            -- 年龄大于等于25岁
    END AS age_cut
FROM 
    user_profile

代码解释

  • CASE WHEN 语句
    • WHEN age IS NULL THEN '其他':如果 age 字段为空 (NULL),则将该用户归类为 '其他'
    • WHEN age < 20 THEN '20岁以下':如果 age 小于 20 岁,归类为 '20岁以下'
    • 其他同理
    • END AS age_cut:将上述分类结果命名为 age_cut

全部评论

相关推荐

05-16 09:20
已编辑
中国民航大学 Java
点赞 评论 收藏
分享
05-16 11:16
已编辑
东华理工大学 Java
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务