请考虑以下几点:
这是我的疑问:
select t2.a, t2.b, t1.m
from table2 t2
join table1 t1 on t1.a = t2.a
and t2.b = t2.b
where t2.x = 'some value'
and t2.y = 'some other value'我必须优化这个查询。
我有以下非聚类索引:
我会从table2上的另一个索引中获益吗?它将覆盖这个查询中使用的所有列: a、b、x和y?
发布于 2015-11-15 06:05:50
考虑到x和y组合将提供一个单行,在x和y上有一个table2索引,在a和b上有一个table1索引。或者,您可以使第一个索引唯一,并添加包含的列,如下所示:
CREATE UNIQUE INDEX IX_table2_x_y ON table2 (x,y) INCLUDE (a,b)
CREATE INDEX IX_table1_a_b ON table1 (a,b) INCLUDE (m)https://stackoverflow.com/questions/33554199
复制相似问题