1、高级操作符
1.1、SQL14 操作符混合运用
描述
题目:现在运营想要找到gpa在3.5以上(不包括3.5)的山东大学用户 或 gpa在3.8以上(不包括3.8)的复旦大学同学进行用户调研,请你取出相应数据
示例1
输入: 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); 复制 输出: 3214|male|None|复旦大学|4.0 5432|male|25|山东大学|3.8
1.1.1、SQL语句(第一种写法)
select device_id, gender, age, university, gpa from user_profile where ( gpa > 3.5 and university = '山东大学' ) or ( gpa > 3.8 and university = '复旦大学' )
1.1.2、SQL语句(第二种写法)
select device_id, gender, age, university, gpa from user_profile where gpa > 3.5 and university = '山东大学' union select device_id, gender, age, university, gpa from user_profile where gpa > 3.8 and university = '复旦大学'
1.1.3、SQL语句(第三种写法)
select device_id, gender, age, university, gpa from user_profile where gpa > 3.5 and university = '山东大学' union all select device_id, gender, age, university, gpa from user_profile where gpa > 3.8 and university = '复旦大学'
1.2、SQL15 查看学校名称中含北京的用户
描述
题目:现在运营想查看所有大学中带有北京的用户的信息,请你取出相应数据。
示例1
输入: 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); INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大学',3.4); INSERT INTO user_profile VALUES(2,3214,'male',null,'复旦大学',4.0); INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大学',3.2); INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大学',3.6); INSERT INTO user_profile VALUES(5,5432,'male',25,'山东大学',3.8); INSERT INTO user_profile VALUES(6,2131,'male',28,'北京师范大学',3.3); 复制 输出: 2138|21|北京大学 6543|20|北京大学 2131|28|北京师范大
select device_id, age, university from user_profile where university like '%北京%'