Funktion CHARINDEX - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Funktion CHARINDEX

Gibt den Ort der angegebenen Unterzeichenfolge innerhalb einer Zeichenfolge zurück.

Ähnliche Funktionen finden Sie unter Die Funktion POSITION und Die Funktion STRPOS.

Syntax

CHARINDEX( substring, string )

Argumente

substring

Die Unterzeichenfolge, die innerhalb der Zeichenfolge gesucht werden soll.

string

Die Zeichenfolge oder Spalte, die durchsucht werden soll.

Rückgabetyp

INTEGER

Die CHARINDEX-Funktion gibt eine INTEGER zurück, die der Position der Teilzeichenfolge entspricht (eins-basiert, nicht null-basiert). Die Position basiert auf der Anzahl der Zeichen, nicht der Bytes. Daher werden Zeichen mit mehreren Bytes als einzelne Zeichen gezählt. CHARINDEX gibt 0 zurück, wenn die Teilzeichenfolge nicht innerhalb der Zeichenfolge gefunden wird.

Beispiele

Verwenden Sie das folgende Beispiel, um die Position der Zeichenfolge fish innerhalb des Worts dog zu zeigen.

SELECT CHARINDEX('fish', 'dog'); +-----------+ | charindex | +-----------+ | 0 | +-----------+

Verwenden Sie das folgende Beispiel, um die Position der Zeichenfolge fish innerhalb des Worts dogfish zu zeigen.

SELECT CHARINDEX('fish', 'dogfish'); +-----------+ | charindex | +-----------+ | 4 | +-----------+

Im folgenden Beispiel wird die Tabelle SALES aus der TICKIT-Beispieldatenbank verwendet. Weitere Informationen finden Sie unter Beispieldatenbank.

Verwenden Sie das folgende Beispiel, um die Zahl der bestimmten Verkaufstransaktionen mit einer Kommission von mehr als 999,00 aus der Tabelle SALES zurückzugeben. Dieser Befehl zählt Provisionen über 999,00, indem geprüft wird, ob die Dezimalzahl mehr als 4 Stellen vom Anfang des Provisionswerts entfernt ist.

SELECT DISTINCT CHARINDEX('.', commission), COUNT (CHARINDEX('.', commission)) FROM sales WHERE CHARINDEX('.', commission) > 4 GROUP BY CHARINDEX('.', commission) ORDER BY 1,2; +-----------+-------+ | charindex | count | +-----------+-------+ | 5 | 629 | +-----------+-------+