想象两个索引:
idx_1 (urlId, name)
idx_2 (urlId)
在哪里和urlId
是。还有一个用于过滤且不以任何方式影响列的查询。bigint
name
nvarchar(320)
urlId
name
- 第二个索引会提高性能吗?差异会很大吗?
- 何时使用单列索引而不是复合多列索引可以提高查询性能?
我感谢基于示例的答案。
编辑:
从答案中我了解到这并不简单。这不是“非黑即白”。所以我稍微改变一下我的问题。我认为第二个应该更快一些,因为它更小。但似乎并非在所有情况下。因此,当性能没有差异时,以及为什么在这些情况下会发生这种情况。