split_part
-Funktion
Gilt für: Databricks SQL Databricks Runtime 11.3 LTS und höher
Teilt str
um Vorkommen von delim
herum und gibt den partNum
-Teil zurück.
Syntax
split_part(str, delim, partNum)
Argumente
str
: EinSTRING
Ausdruck, der geteilt werden soll.delimiter
: EinSTRING
-Ausdruck, der als Trennzeichen für die Teile dient.partNum
: EinINTEGER
-Ausdruck, der den zurückzugebenden Teil auswählt.
Gibt zurück
Ein STRING
.
Wenn partNum
>= 1: Zurückgegeben wird der Teil von partNum
, der vom Anfang von str
zählt.
Wenn partNum
<= -1: Zurückgegeben wird der Teil von abs(partNum)
, der vom Ende von str
zählt.
Wenn partNum
außerhalb der Anzahl der Teile in str
liegt: Die Funktion gibt eine leere Zeichenfolge zurück.
Wenn partNum
0 (null) ist: split_part
löst INVALID_INDEX_OF_ZERO aus.
Beispiele
> SELECT '->' || split_part('Hello,world,!', ',', 1) || '<-';
->Hello<-
> SELECT '->' || split_part('Hello,world,!', ',', 2) || '<-';
->world<-
> SELECT '->' || split_part('Hello,world,!', ',', 100) || '<-';
-><-
> SELECT '->' || split_part('Hello,world,!', ',', -2) || '<-';
->world<-
> SELECT '->' || split_part('Hello,world,!', ',', -100) || '<-';
-><-
> SELECT '->' || split_part('', ',', 1) || '<-';
-><-
> SELECT '->' || split_part('Hello', '', 3) || '<-';
-><-
> SELECT '->' || split_part('Hello,World,!', ',', 0) || '<-';
ERROR: INVALID_INDEX_OF_ZERO
> SELECT split_part('5A6B7' COLLATE UTF8_BINARY, 'a', 1);
5A6B7
> SELECT split_part('5A6B7' COLLATE UTF8_LCASE, 'a', 1);
5