【发布时间】:2013-09-05 15:14:39
【问题描述】:
我们有一个包含多个列的表,我们的一个列上有一个UNIQUE 索引(我们称之为GBID),我们还有另一列(我们称之为flag)没有指标。这个表可能很大,我们查询WHERE gbid IN () AND flag = 1很多,我们偶尔查询WHERE gbid = "XXX",很少查询WHERE flag = 1。
在指数方面哪个更有效:
- 将
gbid用作UNIQUE和flag,但没有索引 - 将
gbid设置为UNIQUE并拥有(gbid, flag)的多列索引 - 将
gbid设置为UNIQUE并拥有(flag, gbid)的多列索引
【问题讨论】:
标签: mysql performance indexing multiple-columns