case when的两种用法分组和行数据变为列名(行变二维表)
计算25岁以上和以下的用户数量
https://www.nowcoder.com/practice/30f9f470390a4a8a8dd3b8e1f8c7a9fa?tpId=199&tqId=1975678&ru=/exam/oj&qru=/ta/sql-quick-study/question-ranking&sourceUrl=%2Fexam%2Foj%3Fpage%3D1%26tab%3DSQL%25E7%25AF%2587%26topicId%3D199
分组用法:
SELECT CASE WHEN age < 25 OR age IS NULL THEN '25岁以下'
WHEN age >= 25 THEN '25岁及以上'
END age_cut,COUNT(*)number
FROM user_profile
GROUP BY age_cut
****行列互换做成二维表用法:
步骤一****
case 想要改变的列的名字 when 想要从此列中拿出去变成列名的行数据
步骤二 通过group by和聚合函数如sum生成结果
汤臣倍健公司氛围 388人发布
