题解 | #统计每种性别的人数#

统计每种性别的人数

http://www.nowcoder.com/practice/f04189f92f8d4f6fa0f383d413af7cb8

CASE + LIKE 方法

SELECT 
CASE 
WHEN profile LIKE '%,male' then 'male'
WHEN profile LIKE '%,female' then 'female'
else '其他'
end as gender,
COUNT(*) AS number 
FROM user_submit
GROUP BY gender;
  • 注意famale 和 male 有重合的地方,所以不能直接like male,否则female 也会被统计进 ‘male’
全部评论
为什么count的括号里面不能写gender啊
2 回复 分享
发布于 2023-05-18 21:38 天津
语句放在里面执行有问题呢
2 回复 分享
发布于 2023-02-16 16:18 上海
为什么like‘%,male’要带逗号,写成like‘%male’就不对
1 回复 分享
发布于 2022-11-11 17:08 北京
先统计female就不用加逗号了 select case when us.profile like "%female" then "female" when us.profile like "%male" then "male" end as gender, count(*) as number from user_submit us group by gender
点赞 回复 分享
发布于 2025-12-26 14:30 安徽
为啥写成WHEN '%,female' THEN 'female' ELSE 'male',会报错啊?
点赞 回复 分享
发布于 2024-12-31 14:37 湖北
执行顺序group by>select,group by后面的gender会报错
点赞 回复 分享
发布于 2023-04-17 18:00 上海
group by 内为啥可以使用select内的别名啊?
点赞 回复 分享
发布于 2022-07-18 17:18

相关推荐

评论
90
1
分享

创作者周榜

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