多个索引同一列sql

时间:2013-04-08 20:44:28

标签: indexing db2

对于DB2数据库,请考虑表tblcolAcolBcolC)和查询

select *
 from tbl
where tbl.colA = 1234.

select *
from tbl
where tbl.colA =1234
and tbl.colB = 73874

如果我们在colA上创建两个索引,我会有所帮助ii)复合 - colA,colB

如果经常访问上面的sql,那么它将有助于拥有上述两个索引。 optemizer是否会根据查询选择正确的索引。

1 个答案:

答案 0 :(得分:2)

您只需要索引(ii)。只要搜索数据位于列的前缀中,就会使用复合索引。因此,当您搜索colA,colB,colC,colDcolAcolA and colBcolA, colB, and colC时,将使用colA, colB, colC, and colD上的索引。