SQL26 计算25岁以上和以下的用户数量

描述

题目:现在运营想要将用户划分为25岁以下和25岁及以上两个年龄段,分别查看这两个年龄段用户数量

本题注意:age为null 也记为 25岁以下

示例:user_profile

|----|-----------|--------|-----|------------|-----|-----------------------|--------------|------------|
| id | device_id | gender | age | university | gpa | active_days_within_30 | question_cnt | answer_cnt |
| 1 | 2138 | male | 21 | 北京大学 | 3.4 | 7 | 2 | 12 |
| 2 | 3214 | male | | 复旦大学 | 4 | 15 | 5 | 25 |
| 3 | 6543 | female | 20 | 北京大学 | 3.2 | 12 | 3 | 30 |
| 4 | 2315 | female | 23 | 浙江大学 | 3.6 | 5 | 1 | 2 |
| 5 | 5432 | male | 25 | 山东大学 | 3.8 | 20 | 15 | 70 |
| 6 | 2131 | male | 28 | 山东大学 | 3.3 | 15 | 7 | 13 |
| 7 | 4321 | male | 26 | 复旦大学 | 3.6 | 9 | 6 | 52 |

根据示例,你的查询应返回以下结果:

|---------|--------|
| age_cut | number |
| 25岁以下 | 4 |
| 25岁及以上 | 3 |

题解

(1)用if函数的写法。

|-------|-------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 | SELECT IF(age>=``25``,``"25岁及以上"``,``"25岁以下"``) AS age_cut,count(*) AS number FROM user_profile GROUP BY age_cut; |

(2)case的写法。

|---------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 | select ``(``case ``when age>=``25 then ``'25岁及以上' ``else '25岁以下' end) as age_cut, ``count(*) as number from user_profile group by age_cut |

两个as,还有记得count是GROUP BY之后计数的。

相关推荐
杨云龙UP几秒前
Docker MySQL 5.7 全库备份到异地服务器实践记录_20260427
linux·运维·服务器·数据库·mysql·docker·容器
gmaajt4 分钟前
html怎么转astro island模式_Astro Islands如何隔离HTML组件
jvm·数据库·python
四维迁跃4 分钟前
CSS如何使用Less的Merge功能合并多个属性值_通过逗号或空格组织css参数
jvm·数据库·python
m0_741481784 分钟前
C#怎么实现全文搜索 C#如何集成Elasticsearch或Lucene.Net实现全文检索功能【数据库】
jvm·数据库·python
Elastic 中国社区官方博客5 分钟前
Elasticsearch:智能搜索 - AI builder,workflow 及 skills
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
u0109147606 分钟前
如何通过后端 API 同时向两个 Webhook 发送表单数据
jvm·数据库·python
运维全栈笔记7 分钟前
K8S部署MySQL主从复制实现高可用数据库
mysql·adb·云原生·容器·系统架构·kubernetes·kubelet
步辞9 分钟前
CSS如何对表单输入框获取焦点时实现标签上浮过渡
jvm·数据库·python
瀚高PG实验室12 分钟前
类型转换导致SQL不走索引的案例
数据库·sql·瀚高数据库
qq_4327036612 分钟前
c++怎么在不使用STL的情况下利用Win32 API进行低级文件IO【底层】
jvm·数据库·python