Funkcja split_part
Dotyczy: Databricks SQL Databricks Runtime 11.3 LTS i nowsze
str
Dzieli się wokół wystąpień delim
i zwraca partNum
część.
Składnia
split_part(str, delim, partNum)
Argumenty
str
STRING
: wyrażenie, które ma zostać podzielone.delimiter
STRING
: wyrażenie pełniące rolę ogranicznika dla części.partNum
: wyrażenieINTEGER
wybierające część, która ma zostać zwrócona.
Zwraca
Klasa STRING
.
Jeśli partNum
>= 1: część partNum
s zliczająca od początku str
zostanie zwrócona.
Jeśli partNum
<= -1: Część abs(partNum)
s zliczająca z końca str
elementu zostanie zwrócona.
Jeśli partNum
wartość przekracza liczbę części w elemecie str
: Funkcja zwraca pusty ciąg.
Jeśli partNum
wartość to 0: split_part
zgłasza INVALID_INDEX_OF_ZERO.
Przykłady
> 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