Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment ajouter plus de recherches OR avec CONTAINS Brings Query to Crawl ?

Je serais curieux de voir si un LEFT JOIN à un CONTAINSTABLE équivalent fonctionnerait mieux. Quelque chose comme :

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