这是一个创建于 2058 天前的主题,其中的信息可能已经有所发展或是发生改变。
查询一个数据量很大的表
一下两个顺序
where 无索引字段(该字段只有 1-20) = 1 and ctime(时间戳有索引)> 昨天开始时间 and ctime(时间戳有索引)<昨天结束时间;
where ctime(时间戳有索引)> 昨天开始时间 and ctime(时间戳有索引)<昨天结束时间 and 无索引字段(该字段只有 1-20) = 1 ;
查询速度是否一样,以前查资料是说先执行过滤掉较多数据的条件,效率会高,因为后面会在前面的结果里再次筛选查询;
今天问了下 DBA 说两种没影响,对于 DBA 的结论,我理解是都去扫描了数据库所有的数据,所以查询是一样的...;
所以比较好奇究竟哪种效率高....数据多,缓存问题,我在自己的本地数据库中测不出来= =;
特来问一下- -
3 条回复 • 2018-08-09 11:44:39 +08:00
|
|
1
FrailLove 2018-08-09 11:13:06 +08:00 via iPhone
没有区别 优化器比你聪明
|
|
|
2
kiwi95 2018-08-09 11:32:42 +08:00 via Android 1
很旧的版本 where 顺序有影响,现在的版本没影响
|