【发布时间】:2013-03-25 01:30:47
【问题描述】:
假设有一个非主键列 (A,B,C,D) 的表在 (A,B,C,D) 上有一个索引
涉及 (A,B,C,D) 子集的查询会使用索引吗?如上所述,部分键查找存在哪些特质?
我对它在 SQL Server、Sqlite、Firebird 中的工作方式特别感兴趣。
【问题讨论】:
标签: sql sql-server sqlite indexing firebird
假设有一个非主键列 (A,B,C,D) 的表在 (A,B,C,D) 上有一个索引
涉及 (A,B,C,D) 子集的查询会使用索引吗?如上所述,部分键查找存在哪些特质?
我对它在 SQL Server、Sqlite、Firebird 中的工作方式特别感兴趣。
【问题讨论】:
标签: sql sql-server sqlite indexing firebird
使用索引初始子集的查询应该使用索引。
因此,(A)、(A) 和 (B) 以及 (A) 和 (B) 和 (C) 上的等值连接应该使用索引。
其实你也可以添加一个不等式,所以,索引应该支持以下所有:
【讨论】:
是的,如果搜索键与索引字段的顺序相同。
否则没有。假设您被指示去图书馆,请查看“了不起的盖茨比”,第 3 章,第三页。这就像使用多字段索引。
现在说,你被告知要获得第 3 章,第三页....没有书名。您必须查看每一本书。
【讨论】: