中易网

mysql 执行 效率问题

答案:2  悬赏:0  
解决时间 2021-03-21 23:28
这是第一条sql语句,执行时间 5s左右
select
...
from
`user` u,
(select u.id_card from user u left join purchase pe on u.user_id = p.user_id
where pe.purchase_status_id = 4 group by u.id_card having count(pe.purchase_id) = 1) a,
purchase pe, product pt
where
u.id_card = a.id_card and u.user_id = p.user_id and p.product_id = pt.product_id and
p.purchase_status_id = 4 and pt.fake_repayment_time < date_sub(current_date, interval 1 month)
group by u.id_card
order by 5;

第二条sql语句,执行时间10s左右
select
...
from
(select u.user_id, u.authentic_name, u.phone_number, u.id_card,
pe.purchase_begin_time, pt.`name`, pt.fake_repayment_time
from user u, purchase pe, product pt
where u.user_id = pe.user_id and pe.product_id = pt.product_id and pe.purchase_status_id = 4
group by u.id_card having count(pe.purchase_id) = 1) t
where t.fake_repayment_time < date_sub(current_date, interval 1 month)
order by 5;

我的直观感觉应该是第一条sql执行更慢,但实际是第二条执行慢,请问原因是什么。
代码不方便观看的话,用美化器美化下把。
最佳答案
如果是相同条件下,当然是第一条了,第二天又相当于创建了一个临时表!
答题不易,互相帮助,手机提问的朋友在客户端右上角评价点满意即可.
如认可我的回答,请点击采纳为满意回答按钮.
全部回答
不是innodb执行插入操作比myisam高效,而是说innodb支持回滚等事务处理,当有多并发操作时可以保证事务安全,插入速度还是myisam比较快的
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
留学美国常见面试问题有哪些
我昨天双眼皮拆线了,她们给了我两瓶冻干粉让
cocos2dx exe无法运行
《建筑给水排水设计规范》gb50015-2010实施了
泡妞是什么意思?适合用在情侣之间吗???
卫生间的地漏的管壁上总是挂东西总堵
*#00000#查什么的
介绍几部有生小孩的影片,谢谢!
简历适应工作范围及要求怎么写
小康之家 鸿运年年两全保险(分红型)
女生200米28秒算不算快
求天津市阿迪达斯各个专卖店?
央视三套综艺节目刘仪伟朱丹高哑铃主持的节目
搜狐视频注册时验证码是5位只让输入4位怎么回
诗经取名,高姓女孩
推荐资讯
我不找他他就不会找我 可以持续三四天到我忍
凹背楼地址在什么地方,想过去办事
白色pu皮衣染了色怎么洗白
男女身高体重正常比例是什么
求此图高清手机壁纸。
公历1995年11月22日是什么星座
比较中西方家长子女关系
以纯厂做多久长能辞工
福州带整牙的牙套需要多少钱
湖南有什么好的专科学校
南昌高考差科弱科补习班招生热线/师资哪里最
请问永川的门面房好租吗?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?