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