五十一、总结sql

一、将用户划分为25岁以下和25岁及以上两个年龄段,分别查看这两个年龄段用户数量

sql 复制代码
drop table if exists `user_profile`;
CREATE TABLE `user_profile` (
`id` int NOT NULL,
`device_id` int NOT NULL,
`gender` varchar(14) NOT NULL,
`age` int ,
`university` varchar(32) NOT NULL,
`gpa` float,
`active_days_within_30` int ,
`question_cnt` int ,
`answer_cnt` int 
);

INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学',3.4,7,2,12);
INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学',4.0,15,5,25);
INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学',3.2,12,3,30);
INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学',3.6,5,1,2);
INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学',3.8,20,15,70);
INSERT INTO user_profile VALUES(6,2131,'male',28,'山东大学',3.3,15,7,13);
INSERT INTO user_profile VALUES(7,4321,'male',28,'复旦大学',3.6,9,6,52);
sql 复制代码
 --if(x=n,a,b)表示如果x=n,则返回a,否则就是b了。
--Union 会去除重复的记录,而 Union All 不会去重
select
    if (age >= 25, '25岁及以上', '25岁以下') 'age_cut',
    count(device_id) 'mumber'
from
    user_profile
group by
    age_cut
相关推荐
Kingairy8 分钟前
Python面试高频题
java·python·面试
黎雁·泠崖9 分钟前
Java数组入门:定义+静态/动态初始化全解析(隐式转换+案例+避坑指南)
java·开发语言·python
松涛和鸣25 分钟前
DAY49 DS18B20 Single-Wire Digital Temperature Acquisition
linux·服务器·网络·数据库·html
海边的Kurisu34 分钟前
苍穹外卖日记 | Day3 公共字段填充、菜品模块
数据库
Knight_AL36 分钟前
设计模式之责任链模式:原理解析 + Java 示例
java·设计模式·责任链模式
1candobetter39 分钟前
JAVA后端开发——深入理解 Java Static
java·开发语言
摆烂z41 分钟前
mysql通过binlog恢复数据
数据库·mysql
一念一花一世界1 小时前
PostIn项目实战 - 使用Mock数据尽早满足前后端接口开发需求
java·mock·postin·接口管理工具
白露与泡影1 小时前
Spring事件机制完全指南:解耦利器与实战
java·后端·spring
DYS_房东的猫1 小时前
《 C++ 零基础入门教程》第10章:C++20 核心特性 —— 编写更现代、更优雅的 C++
java·c++·c++20