SQL14. 操作符混合运用
描述
id | device_id | gender | age | university | province | gpa |
1 | 2138 | male | 21 | 北京大学 | BeiJing | 3.4 |
2 | 3214 | male | NULL | 复旦大学 | Shanghai | 4 |
3 | 6543 | female | 20 | 北京大学 | BeiJing | 3.2 |
4 | 2315 | female | 23 | 浙江大学 | ZheJiang | 3.6 |
5 | 5432 | male | 25 | 山东大学 | Shandong | 3.8 |
device_id | gender | age | university | gpa |
3214 | male | NULL | 复旦大学 | 4 |
5432 | male | 25 | 山东大学 | 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
Mysql 解法, 执行用时: 36ms, 内存消耗: 6384KB, 提交时间: 2021-12-26
select user_profile.device_id,user_profile.gender,user_profile.age,user_profile.university,user_profile.gpa from user_profile where (user_profile.gpa>3.5 and user_profile.university="山东大学") or (user_profile.gpa>3.8 and user_profile.university="复旦大学")
Mysql 解法, 执行用时: 36ms, 内存消耗: 6396KB, 提交时间: 2022-02-08
SELECT device_id, gender, age, university, gpa FROM user_profile WHERE gpa > 3.5 AND university = "山东大学" OR gpa >3.8 AND university = "复旦大学"
Mysql 解法, 执行用时: 36ms, 内存消耗: 6416KB, 提交时间: 2022-01-01
select device_id , gender , age , university , gpa from user_profile where (university in('山东大学')and gpa>3.5)or(university in('复旦大学')and gpa>3.8);
Mysql 解法, 执行用时: 36ms, 内存消耗: 6416KB, 提交时间: 2022-01-01
SELECT device_id,gender,age,university,gpa FROM user_profile where gpa>3.5 and university= '山东大学' or gpa>3.8 and university= '复旦大学'
Mysql 解法, 执行用时: 36ms, 内存消耗: 6416KB, 提交时间: 2021-12-20
select device_id,gender,age,university,gpa from user_profile where gpa>3.5 and university = '山东大学' or (gpa>3.8 and university = '复旦大学')