mssql 中 主键用in 会引起全表扫描吗,如何测试?
比如这条语句 select * from biao where id in(98,54,68,215,6) 其中id是主键,这样的查询会引起全表扫描吗,如何进行测试呢?
比如这条语句 select * from biao where id in(98,54,68,215,6) 其中id是主键,这样的查询会引起全表扫描吗,如何进行测试呢?
答案:set statistics time on可以看执行时间;
show plan可以看查询执行计划;
会引起索引扫描
其他:不会
因为ID是主键,所以扫描的表是首先扫描主键表,然后直接查询数据记录表,所以不会
如果你的条件是另一个字段,并且这个字段不是索引,那就会引起全表扫描,你可以分别写两个sql运行看一下