SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)


文章目录

  • 1. 查找某个年龄段的用户信息
  • 2. 查找除复旦大学的用户信息
  • 3. 用where过滤空值练习
  • 4. 高级操作符练习(1)
  • 5. 如何让刷题变得更高效?

1. 查找某个年龄段的用户信息 题目:现在运营想要针对20岁及以上且23岁及以下的用户开展分析,请你取出满足条件的设备ID、性别、年龄。
用户信息表:user_profile
SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

建表语句:
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, `province` varchar(32)NOT NULL); INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学','BeiJing'); INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学','Shanghai'); INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学','BeiJing'); INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学','ZheJiang'); INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学','Shandong');

解题答案:
SELECT device_id,gender,age from user_profile where age>=20 and age<=23 -- 或者: SELECT device_id,gender,age from user_profile where age between 20 and 23

SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

2. 查找除复旦大学的用户信息 题目:现在运营想要查看除复旦大学以外的所有用户明细,请你取出相应数据
SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

建表语句:
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, `province` varchar(32)NOT NULL); INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学','BeiJing'); INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学','Shanghai'); INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学','BeiJing'); INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学','ZheJiang'); INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学','Shandong');

解题答案:
select device_id,gender,age,university from user_profile #where university <> '复旦大学'; #where university != '复旦大学'; where university not in ('复旦大学');

SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

3. 用where过滤空值练习 题目:现在运营想要对用户的年龄分布开展分析,在分析时想要剔除没有获取到年龄的用户,请你取出所有年龄值不为空的用户的设备ID,性别,年龄,学校的信息。
SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

建表语句:
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, `province` varchar(32)NOT NULL); INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学','BeiJing'); INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学','Shanghai'); INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学','BeiJing'); INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学','ZheJiang'); INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学','Shandong');

解题答案:
SELECT device_id,gender,age,university FROM user_profile where age is not NULL SELECT device_id,gender,age,university FROM user_profile where age <>'null' --正则 SELECT device_id,gender,age,university FROM user_profile where age !='null' --比较

SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

4. 高级操作符练习(1) 题目:现在运营想要找到男性且GPA在3.5以上(不包括3.5)的用户进行调研,请你取出相关数据。
SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

建表语句:
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, `province` varchar(32)NOT NULL, `gpa` float); INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学','BeiJing',3.4); INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学','Shanghai',4.0); INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学','BeiJing',3.2); INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学','ZheJiang',3.6); INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学','Shandong',3.8);

解题答案:
SELECT device_id, gender, age, university,gpa FROM user_profile WHERE gpa >3.5 AND gender in('male')

SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

5. 如何让刷题变得更高效?
【SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)】最近很多学了基础的小伙伴问我该怎么提升编程水平?学了基础该上哪刷题?明明学了很多,做项目却不知道怎么上手,其实这就是练得太少,只注重了学,却忽视了刷题,只有不断练习才能提高和巩固编程思维和能力!
SQL每日一练|SQL每日一练(牛客新题库)——第3天( 条件查询)
文章图片

链接地址:牛客网 | SQL刷题篇,废话少说速度上号!!!

    推荐阅读