返回信息流create table atemp as select uid from aoldata group by uid having count(uid)<300;
delete from aoldata where uid in(select *from atemp);
如果aoldata有10,000,000条数据,atemp大概也有几十万条,那么这个操作耗时是不是很恐怖?有没有什么优化的方法呢?
这是一条镜像帖。来源:北邮人论坛 / database / #6944同步于 2012/7/5
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖
求大牛分析一下这条sql语句的耗时
Saru
2012/7/5镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
如果你是InnodDB存储引擎,建议lz 为uid建立二级索引,不要走主索引,这样子速度的提升可能是7.8倍之多,你可以自己测试下,这是由InnoDB主索引和二级索引的底层设计造成的速度差异。如果是MyIsAM我就不了解了。还没看到那,好多都不懂。