Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak dodać więcej wyszukiwań OR za pomocą CONTAINS Brings Query to Crawl?

Byłbym ciekawy, czy LEFT JOIN do równoważnego CONTAINSTABLE będzie działał lepiej. Coś takiego:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wyszukaj tekst w procedurze składowanej w SQL Server

  2. SQL Server — Wybierz kolumny, które spełniają określone warunki?

  3. jest typu, który nie nadaje się do użycia jako kolumna klucza w indeksie

  4. SQL Server 2016 — wprowadzenie do bazy danych Stretch

  5. Dlaczego nie mogę użyć aliasu dla agregatu w klauzuli posiadającej?