题解 | #操作符混合运用#

操作符混合运用

http://www.nowcoder.com/practice/d5ac4c878b63477fa5e5dfcb427d9102

select device_id,gender,age,university,gpa from user_profile where university='山东大学' and gpa>3.5 or university='复旦大学' and gpa>3.8 --虽然短,但是执行用时长 select device_id, gender, age, university, gpa from user_profile where device_id in (select device_id from user_profile where gpa>3.5 and university='山东大学') or device_id in (select device_id from user_profile where gpa>3.8 and university='复旦大学') 复杂的写法,子查询的方式 --运行时间短

全部评论
我才疏学浅,但是你这不是脱裤子放屁吗
65 回复 分享
发布于 2022-06-02 01:46
子查询的运行时间很长的
14 回复 分享
发布于 2021-11-18 15:34
我记得MySQL性能优化里面就说了尽量不要用子查询
8 回复 分享
发布于 2022-10-13 23:25 广东
='山东大学' and gpa>3.5 应该用括号括起来吧
4 回复 分享
发布于 2022-10-13 15:04 上海
也算熟悉了一下子查询的用法吧
3 回复 分享
发布于 2022-06-14 21:34
不一定吧,我测试了一下只有一次是短的
2 回复 分享
发布于 2022-04-11 09:59
前者53ms,后者44ms,确实后者快
2 回复 分享
发布于 2022-07-04 13:43
时间是一样的,数据量大的话可能会看出效果
2 回复 分享
发布于 2022-07-20 10:34
执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询的速度会受到一定的影响,这里多了一个创建和销毁临时表的过程。
2 回复 分享
发布于 2022-10-22 16:40 福建
子查询运行时间更长吧
1 回复 分享
发布于 2022-04-13 15:11
子查询时间更长吧
1 回复 分享
发布于 2022-07-23 10:38
其实,用union行不行的
1 回复 分享
发布于 2022-08-27 23:18 广东
你这么写不如直接两个union all呢
1 回复 分享
发布于 2023-01-19 14:33 上海
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 回复 分享
发布于 2023-01-19 14:36 上海
他是运行过一次了,哈哈,算什么效率高。第一次一样慢
1 回复 分享
发布于 2023-01-31 17:45 江苏
本来查一次就完事儿了,第二种方式还额外多查了两次
1 回复 分享
发布于 2024-06-30 03:58 广东
我怎么感觉一样呢?
点赞 回复 分享
发布于 2022-06-12 11:45
写子查询会不会浪费太多时间了
点赞 回复 分享
发布于 2022-07-15 15:03
好像没什么差别吧
点赞 回复 分享
发布于 2022-08-09 18:25
牛啊兄弟
点赞 回复 分享
发布于 2022-08-29 16:04 浙江

相关推荐

会飞的猿:本人来了,手一抖转错了,我是学生,能还给我吗
点赞 评论 收藏
分享
老方子:英语等级cet写错了吧
点赞 评论 收藏
分享
评论
404
17
分享

创作者周榜

更多
牛客网
牛客企业服务