1
我有兩個全文搜索查詢提高全文的查詢性能
查詢1:
Declare @KEYSEARCH nvarchar(4000)="string search here....".
SELECT * FROM TABLE1 WHERE CONTAINS(col1,@KEYSEARCH)
一次執行這個查詢:0.2秒
查詢2:
Declare @KEYSEARCH nvarchar(4000)="string search here....".
SELECT * FROM TABLE1 WHERE (CONTAINS(col1,@KEYSEARCH) or @KEYSEARCH='%%')
時間執行此查詢:11s
第二個查詢爲什麼這麼慢?
@KEYSEARCH ='%%'是什麼意思? – Prasanna
你能做一個解釋嗎?我的意思是:把這個關鍵字放在你的查詢之前。您將可以爲查詢優化提供有價值的數據。 – Cedric
@prasanna我懷疑目的是允許一個匹配所有內容的特殊「通配符」並返回所有行。 –