考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

某电商平台的数据分析师需要从订单表 orders 中为每个用户生成一个“消费等级”标签:消费总额大于10000元的标记为“高消费”,5000至10000元标记为“中消费”,低于5000元标记为“低消费”。分析师希望在新列 level 中展示该标签。以下SQL写法中,能正确实现该需求的是?
A. SELECT user_id, total_amount, IF(total_amount>10000,'高消费', total_amount>5000,'中消费','低消费') AS level FROM orders
B. SELECT user_id, total_amount, CASE WHEN total_amount>10000 THEN '高消费' WHEN total_amount>5000 THEN '中消费' ELSE '低消费' END AS level FROM orders
C. SELECT user_id, total_amount, CASE total_amount WHEN >10000 THEN '高消费' WHEN >5000 THEN '中消费' ELSE '低消费' END AS level FROM orders
D. SELECT user_id, total_amount, DECODE(total_amount, 10000, '高消费', 5000, '中消费', '低消费') AS level FROM orders
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

CASE WHEN condition THEN result ... ELSE result END。B符合标准语法,且逻辑正确(注意条件顺序:先判断>10000,再判断>5000)。