admin

在两列上的唯一索引是否暗含在每列上的索引?

sql

我的架构中有一个表,该表在两列上具有唯一约束:

UNIQUE(Column1, Column2)

SQlite文档告诉我,这会在这些列上创建一个唯一索引。我的问题是,这是否会使其中一个列上的显式创建索引(例如Column1)变得多余?


阅读 144

收藏
2021-06-07

共1个答案

admin

是您的示例,否是您的问题。

2列上的复合索引会使 一个列上的附加索引变得多余。但是, 第二 列上的索引可能仍然有用。

但是,如果每个列本身都是唯一的,则可能不需要复合索引。您可能需要调查一下。

索引过多并不总是一个显而易见的问题。但是浪费资源,特别是出于冗余目的,总是很糟糕的。

2021-06-07