在SQL Server数据库中,我有一个包含大量INNER JOINs语句的View。最后的连接使用LIKE谓词,这就是为什么它的工作速度太慢。查询看起来像:在CONTAINS函数中使用JOIN语句
SELECT *
FROM A INNER JOIN
B ON A.ID = B.ID INNER JOIN
C ON C.ID1 = B.ID1 INNER JOIN
...........................
X ON X.Name LIKE '%' + W.Name + '%' AND
LIKE '%' + W.Name2 + '%' AND
LIKE '%' + W.Name3 + '%'
我想用含有代替LIKE为:
SELECT *
FROM A INNER JOIN
B ON A.ID = B.ID INNER JOIN
C ON C.ID1 = B.ID1 INNER JOIN
...........................
X ON CONTAINS(X.Name, W.Name) AND
CONTAINS(X.Name, W.Name2) AND
CONTAINS(X.Name, W.Name3)
我知道包含工作比LIKE速度更快,也不能使用含有In JOIN声明。 在这种情况下或建议是否有任何解决方法? 在此先感谢。
感谢您的答复。我对光标不熟悉。请给我一个例子,如何在我的情况下使用它? – Alexander
增加了一些例子(虽然非常接近) –