Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

LIKE vs CONTAINS su SQL Server

Il secondo (supponendo che tu intenda CONTAINS , ed effettivamente inserirlo in una query valida) dovrebbe essere più veloce, perché può usarne alcuni forma di indice (in questo caso, un indice di testo completo). Naturalmente, questa forma di query è disponibile solo se la colonna è in un indice di testo completo. In caso contrario, è disponibile solo il primo modulo.

La prima query, che utilizza LIKE, non sarà in grado di utilizzare un indice, poiché inizia con un carattere jolly, quindi richiederà sempre una scansione completa della tabella.

Il CONTAINS la query dovrebbe essere:

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