【发布时间】:2017-02-28 12:14:03
【问题描述】:
例如,表 FOO
id name type
---------------------------------------------
bigint(20) varchar(30) smallint(4)
唯一键 name_type(名称,类型)。
将为(名称,类型)创建索引。但是如果很多查询都涉及type=aNumber这样的类型,是否需要单独为type创建索引呢?
也就是说 index(name, type) 是否包含 index(type)?
mysql和oracle db怎么样?
【问题讨论】:
-
戴夫 - 胡安在他的回答中所说的是真的,但它没有回答你的问题。至少在 Oracle 中,如果您按索引中的 FIRST 列进行过滤,则将使用复合索引,但如果您仅按索引中的第二列进行过滤,则不会使用复合索引。在您的情况下,您确实需要类型索引。
-
这个 问题没有提到通配符,所以我觉得 dup 问题 不相关。投票重新开放。
标签: mysql oracle indexing multiple-columns unique-key