<分区>
考虑两个查询,
- 从表中选择 *,其中 size = 'L';
- 从表中选择 *,其中 id IN (691,12,123,5123,....); # id 是表的主键。并涵盖 size ='L' 的所有情况。
现在考虑一个有 200 万条记录的表,我将触发这两个查询。
这两个查询中哪个会运行得更快,为什么?
从系统的角度考虑这种情况,该系统在选择选项时过滤掉数据。
<分区>
考虑两个查询,
现在考虑一个有 200 万条记录的表,我将触发这两个查询。
这两个查询中哪个会运行得更快,为什么?
从系统的角度考虑这种情况,该系统在选择选项时过滤掉数据。
最佳答案
简而言之:这个答案取决于有多少行有 size='L'
。如果有很多行,第二个会更有效,因为 size
上的索引很慢(基数)。
关于mysql - Select查询的效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26550337/