in走不走索引?可以用哪个关键字代替?
网上有很多人说in不走索引,事实上我经过执行计划自己测试发现,in明明就是走索引的。看来网上也不全可信啊。后来又查了以下,发现 MySQL 4.1 以上版本的 IN 是走索引的, 但4.0及其以下版本是不走索引的。 原来是这样,4.0以下确实是不走索引的,难怪之前有人说。可以用exist代替in,exit的执行效率要高。in是子查询。而exist是通过id关联,组成一张虚表,操作的是同一张表。..
·
网上有很多人说in不走索引,事实上我经过执行计划自己测试发现,in明明就是走索引的。看来网上也不全可信啊。
后来又查了以下,发现 MySQL 4.1 以上版本的 IN 是走索引的, 但4.0及其以下版本是不走索引的。
原来是这样,4.0以下确实是不走索引的,难怪之前有人说。
可以用exist代替in,exit的执行效率要高。
in是子查询。而exist是通过id关联,组成一张虚表,操作的是同一张表。
更多推荐
已为社区贡献1条内容
所有评论(0)