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

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

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

SELECT 
    device_id, 
    gender, 
    CASE
        WHEN age<20 THEN "20岁及以下"
        WHEN age BETWEEN 20 and 24 THEN "20-24岁"
        WHEN age>=25 THEN "25岁及以上"
        ELSE "其他" 
    END AS age_cut
FROM user_profile;

原先的错误代码是:

SELECT device_id, gender, 
    CASE
    WHEN age<20 then "20岁及以下"
    WHEN age between 20 and 24 then "20-24岁"
    WHEN age>=25 then "25岁及以上"
    ELSE "其他" AS age_cut,
FROM user_profile

对着别人的答案看了半天,没看出问题。只好交给chatgpt。

gpt老师给出回复:

The AS age_cut is placed outside the CASE statement to properly rename the resulting column.

Single quotes (') are used for the string literals, which is the standard in SQL.

改了下格式,没改单双引号,再测试了一下,还是没过。

问题出在哪呢?我写的错误代码里,age_cut后面有个逗号!

还学会了END AS的正确用法。END AS不要放在CASE后面的循环语句里

#sql#
全部评论

相关推荐

01-05 09:14
同济大学 Java
心碎一号线:我要是9✌🏻我就选保研,保研了大四再找实习,实习之后,如果觉得自己不适合互联网工作模式,还能有其他选择,如果实习后决定了走互联网,也能提升学历提高竞争力
点赞 评论 收藏
分享
想run的马里奥在学...:这个学历帮你扫平百分之80的障碍,投就完了,这会找不到就等3月暑期一样能找到
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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