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

LIKE vs CONTAINS na SQL Server

Drugi (zakładając, że masz na myśli CONTAINS i faktycznie umieścić go w prawidłowym zapytaniu) powinien być szybszy, ponieważ może użyć niektórych forma indeksu (w tym przypadku indeks pełnotekstowy). Oczywiście ta forma zapytania jest dostępna tylko jeśli kolumna jest w indeksie pełnotekstowym. Jeśli tak nie jest, dostępny jest tylko pierwszy formularz.

Pierwsze zapytanie, używające LIKE, nie będzie mogło użyć indeksu, ponieważ zaczyna się od symbolu wieloznacznego, więc zawsze będzie wymagało pełnego skanowania tabeli.

CONTAINS zapytanie powinno brzmieć:

SELECT * FROM table WHERE CONTAINS(Column, 'test');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Odpytywanie danych poprzez łączenie dwóch tabel w dwie bazy danych na różnych serwerach

  2. Jak SCHEMA_ID() działa w SQL Server

  3. Narzędzie do skryptowania danych tabeli

  4. Jak zwrócić listę zdarzeń wyzwalających w SQL Server

  5. Jak połączyć się z wystąpieniem programu SQL Server przy użyciu uwierzytelniania systemu Windows lub uwierzytelniania programu SQL Server — samouczek programu SQL Server/T-SQL, część 3