命中表中的附加索引

时间:2014-12-04 14:41:17

标签: sql sql-server full-text-search

假设我有一个表格T ,其中包含10列以及视图V ,可选择其中4列。做一个

select columnA from V where columnB=x and columnC=y and (columnD like '%z%')

我还有一个覆盖非聚集索引(涵盖选择其中列)。问题是括号中的部分 - 双方都有通配符有效地使列排序无关紧要。

我是否可以从创建视图的新的,可能是聚簇/全文索引中受益?我知道这可能会实现它。除了额外的空间要求之外还有其他负面影响吗?

如何进行通配符搜索?

1 个答案:

答案 0 :(得分:0)

正如问题评论中提到的螺旋一样,不允许使用前面带有通配符的全文搜索,因此在这种情况下,全文搜索(以及它可能基于的任何其他视图)都没有什么帮助。 / p>

似乎创建一个新的(甚至物化的)视图也没有带来性能提升。

工作解决方案:尽可能并行化比较。 SQL Server的MAXDOP(MAX并行度)给出了非常好的结果 - 接近线性改进。 MAXDOP Query hints for MAXDOP