Funktionen split_part
Gäller för: Databricks SQL Databricks Runtime 11.3 LTS och senare
str
Delar runt förekomster av delim
och returnerar partNum
delen.
Syntax
split_part(str, delim, partNum)
Argument
str
: EttSTRING
uttryck som ska delas.delimiter
: EttSTRING
uttryck som fungerar som avgränsare för delarna.partNum
: EttINTEGER
uttryck som väljer den del som ska returneras.
Returer
En STRING
.
If partNum
>= 1: S-delen partNum
som räknas från början av str
returneras.
If partNum
<= -1: S-delen abs(partNum)
som räknas från slutet av str
returneras.
Om partNum
är längre än antalet delar i str
: Funktionen returnerar en tom sträng.
Om partNum
är 0: split_part
genererar en INVALID_INDEX_OF_ZERO.
Exempel
> 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