SQL Server: Kombination von LIKE- und IN-Operatoren
Der LIKE
-Operator von SQL Server sucht nach Mustern, während IN
nach Übereinstimmungen innerhalb einer Werteliste sucht. Eine direkte Kombination in einer einzigen WHERE
-Klausel ist nicht möglich.
Um die entsprechende Funktionalität zu erreichen, verwenden Sie mehrere LIKE
-Bedingungen, die mit OR
:
<code class="language-sql">SELECT * FROM table WHERE column LIKE 'Text%' OR column LIKE 'Link%' OR column LIKE 'Hello%' OR column LIKE '%World%';</code>
Diese Abfrage ruft Zeilen ab, in denen column
mit einem der angegebenen Muster übereinstimmt. Es würde beispielsweise Zeilen zurückgeben, die „Text“, „Textad“, „Text hello“, „Link2“, „Linkomg“, „HelloWorld“ und „ThatWorldBusiness“ enthalten. Der Platzhalter %
steht für eine beliebige Zeichenfolge (einschließlich Null).
Wenn Sie alternativ eine vordefinierte Werteliste haben, ist die Verwendung einer Reihe von OR
-Bedingungen mit LIKE
möglicherweise weniger effizient als andere Ansätze. Erwägen Sie die Verwendung einer temporären Tabelle oder eines gemeinsamen Tabellenausdrucks (CTE) für komplexere Szenarien oder große Wertemengen.
Das obige ist der detaillierte Inhalt vonKönnen die LIKE- und IN-Operatoren von SQL Server in einer einzigen Klausel kombiniert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!