- Kategorien:
Zeichenfolgen- und Binärfunktionen (Abgleich/Vergleich)
ILIKE ANY¶
Ermöglicht das Abgleichen von Zeichenfolgen basierend auf dem Vergleich mit einem oder mehreren Mustern ohne Berücksichtigung der Groß- und Kleinschreibung.
Die Operation ähnelt LIKE
. Wenn die Eingabezeichenfolge mit einem der Muster übereinstimmt, wird die Eingabezeichenfolge zurückgegeben.
Syntax¶
<subject> ILIKE ANY (<pattern1> [, <pattern2> ... ] ) [ ESCAPE <escape_char> ]
Argumente¶
Benötigt:
Subjekt
Die Zeichenfolge, die mit den Mustern verglichen werden soll.
Muster#
Die Muster, mit denen die Zeichenfolge verglichen werden soll. Sie müssen mindestens ein Muster angeben.
Optional:
Escape-Zeichen
Zeichen, die vor einem Platzhalterzeichen eingefügt werden, um anzuzeigen, dass der Platzhalter als normales Zeichen und nicht als Platzhalter interpretiert werden soll.
Rückgabewerte¶
Der Datentyp des zurückgegebenen Werts ist VARCHAR.
Nutzungshinweise¶
SQL-Platzhalter werden in
Muster
unterstützt:Ein Unterstrich (
_
) nimmt einen Abgleich für beliebige Einzelzeichen vor.Ein Prozentzeichen (
%
) nimmt einen Abgleich für eine beliebige Folge von null oder mehr Zeichen vor.
Platzhalter in
Muster
erkennen auch Zeilenumbruchzeichen (\n
) inSubjekt
als Übereinstimmungen.Das Muster wird als Übereinstimmung betrachtet, wenn das Muster mit der gesamten Eingabezeichenfolge (Subjekt) übereinstimmt. Um eine Sequenz an einer bestimmten Stelle in einer Zeichenfolge abzugleichen, beginnen und beenden Sie das Muster mit
%
, zum Beispiel ‚%something%‘.NULL stimmt nicht mit NULL überein. Mit anderen Worten: Wenn das Subjekt NULL ist und eines der Muster NULL ist, wird dies nicht als Übereinstimmung angesehen.
Wenn die Funktion mit einer Unterabfrage verwendet wird, sollte die Unterabfrage eine einzelne Zeile zurückgeben.
Beispielsweise sollte Folgendes nur verwendet werden, wenn die Unterabfrage eine einzelne Zeile zurückgibt:
SELECT ... WHERE x LIKE ANY (SELECT ...)
Beispiele¶
Hier wird die Verwendung von ILIKEANY gezeigt:
Erstellen Sie eine Tabelle, die einige Zeichenfolgen enthält:
CREATE OR REPLACE TABLE ilike_example(subject varchar(20)); INSERT INTO ilike_example VALUES ('jane doe'), ('Jane Doe'), ('JANE DOE'), ('John Doe'), ('John Smith');SELECT * FROM ilike_example WHERE subject ILIKE ANY ('jane%', '%SMITH') ORDER BY subject; +------------+ | SUBJECT | |------------| | JANE DOE | | Jane Doe | | John Smith | | jane doe | +------------+
Beispiele zur Verwendung von Platzhalterzeichen finden Sie in der Dokumentation der zugehörigen Funktion LIKE ANY.