1/在表中,与 有何index I1 on T(col1, col2)
不同index I2 on T(col2, col1)
?我们可以同时创建吗?举个例子Unique Index
。
索引跳过扫描似乎表明列顺序很重要,这意味着 I1 可能与 I2 不同。
在另一个文本中,我看到了
CREATE TABLE INVOICES
(ID NUMBER(11),
INVOICE_DATE DATE,
CONSTRAINT UN_ID UNIQUE(ID, DATE) USING INDEX(CREATE INDEX I_INVOICES ON INVOICES(ID, INVOICE_DATE)),
CONSTRAINT UN_DATE UNIQUE(DATE, ID) USING INDEX I_INVOICES);
意思是Unique constraints (col1, col2)
和(col2, col1)
都使用相同的index (col1, col2)
。
每个人的一些见解?我的问题不在于 我们何时选择一个而不是另一个?
但是关于它们何时共存它们是两个不同的索引/对象吗?顺序重要吗?为什么该示例对两者都使用相同的索引?因为顺序很重要,除了 (col1, col2) 创建另一个索引 (col2, col1) 会更好吗?
2/ 关于同一个问题:为什么我们使用 justCREATE INDEX
和 not CREATE UNIQUE INDEX
?在什么情况下我们使用CREATE UNIQUE INDEX
?