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

Gibt es eine Kombination aus LIKE und IN in SQL?

Es gibt keine Kombination von LIKE &IN in SQL, geschweige denn in TSQL (SQL Server) oder PLSQL (Oracle). Das liegt zum Teil daran, dass die Volltextsuche (FTS) die empfohlene Alternative ist.

Sowohl Oracle- als auch SQL Server-FTS-Implementierungen unterstützen das CONTAINS-Schlüsselwort, aber die Syntax ist immer noch etwas anders:

Orakel:

WHERE CONTAINS(t.something, 'bla OR foo OR batz', 1) > 0

SQL-Server:

WHERE CONTAINS(t.something, '"bla*" OR "foo*" OR "batz*"')

Die abgefragte Spalte muss volltextindiziert sein.

Referenz:

  • Erstellen von Volltextsuchanwendungen mit Oracle Text
  • SQL Server-Volltext verstehen