多个字段上的索引,字段顺序相关?

问题描述 投票:0回答:1

当您在多个字段上创建索引时 (就像在 br_at1(aspect_id,budget_id) 上创建唯一索引 r_at1_aspect_budget 一样 字段的顺序相关吗?是否应该按选择性订购?

WHERE 子句的顺序与查询相关吗? (或者这一切都被优化器否决了)

sql h2
1个回答
0
投票

(A, B)
上的索引可用于
WHERE A = 1
WHERE A = 1 AND B = 2
,但不能用于
WHERE B = 2

相同的索引可用于

ORDER BY A
ORDER BY A, B
,但不能用于
ORDER BY B

请注意,某些索引可以由数据库本身创建。在 H2 中,如果尚不存在兼容索引,主键或唯一约束总是在其列上创建唯一索引。如果不存在兼容索引,引用约束始终会在引用列上创建非唯一索引。

© www.soinside.com 2019 - 2024. All rights reserved.