Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie füge ich weitere OR-Suchen mit CONTAINS Brings Query to Crawl hinzu?

Ich wäre gespannt, ob ein LEFT JOIN zu einem äquivalenten CONTAINSTABLE besser abschneiden würde. Etwas wie:

SELECT     a.CollectionID
FROM       collections    a
INNER JOIN determinations b ON a.CollectionID = b.CollectionID 
LEFT JOIN CONTAINSTABLE(a, *, '"*fa*"') ct1 on a.CollectionID = ct1.[Key]
LEFT JOIN CONTAINSTABLE(b, *, '"*fa*"') ct2 on b.CollectionID = ct2.[Key]
WHERE      a.CollrTeam_Text LIKE '%fa%'
           OR ct1.[Key] IS NOT NULL
           OR ct2.[Key] IS NOT NULL