Gibt eine Ganzzahl zurück, die die Startposition des ersten Auftretens eines Musters in einer Zeichenfolge darstellt.
PATINDEX( '%Muster%', Zeichenfolgenausdruck )
Muster Das Muster, nach dem gesucht wird. Wenn der führende Prozent-Platzhalter weggelassen wird, gibt die PATINDEX-Funktion "1" zurück, falls das Muster am Anfang der Zeichenfolge auftritt, und "0", falls nicht.
Das Muster verwendet dieselben Platzhalter wie der LIKE-Vergleich. Das sind die folgenden:
Wildcard-Zeichen | Gefunden |
---|---|
_ (Unterstrich) | Ein Zeichen |
% (Prozent) | Eine Zeichenfolge mit null oder mehr Zeichen |
[] | Ein einzelnes Zeichen im angegebenen Bereich oder Menge |
[^] | Ein einzelnes Zeichen außerhalb des angegebenen Bereichs oder Menge |
Zeichenfolgenausdruck Die Zeichenfolge, die nach dem Muster durchsucht werden soll
INT
Die PATINDEX-Funktion gibt die Startposition des ersten Auftretens des Musters zurück. Wenn das Muster nicht gefunden wird, wird "0" zurückgegeben.
SQL/2003 Erweiterung des Herstellers
Die folgende Anweisung liefert den Wert 2.
SELECT PATINDEX( '%hoco%', 'chocolate' ); |
Die folgende Anweisung liefert den Wert 11.
SELECT PATINDEX( '%4_5_', '0a1A 2a3A 4a5A' ); |
Die folgende Anweisung gibt 14 zurück, also das erste, nicht alphanumerische Zeichen im Zeichenfolgenausdruck. Beachten Sie,
dass das Muster '%[^a-z0-9]%'
anstelle von '%[^a-zA-Z0-9]%'
verwendet werden kann, wenn die Datenbank die Groß- und Kleinschreibung nicht berücksichtigt.
SELECT PATINDEX( '%[^a-zA-Z0-9]%', 'SQLAnywhere11 has many new features' ); |
Um das erste alphanumerische Wort in einer Zeichenfolge zu erhalten, können Sie einen Befehl der folgenden Art benutzen:
SELECT LEFT( @string, PATINDEX( '%[^a-zA-Z0-9]%', @string ) ); |
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |