Função split_part
Aplica-se a: Databricks SQL Databricks Runtime 11.3 LTS e versões posteriores
Divide str
em ocorrências de delim
e retorna a parte partNum
.
Sintaxe
split_part(str, delim, partNum)
Argumentos
str
: uma expressãoSTRING
a ser dividida.delimiter
: uma expressãoSTRING
que serve como delimitador para as partes.partNum
: uma expressãoINTEGER
que elege a parte a ser retornada.
Retornos
Um STRING
.
Se partNum
>= 1: a contagem de partes de partNum
do início de str
será retornada.
Se partNum
<= 1: a contagem de partes de abs(partNum)
do final de str
será retornada.
Se partNum
estiver além do número de partes em str
: a função retornará uma cadeia de caracteres vazia.
Se partNum
for 0: split_part
irá gerar um INVALID_INDEX_OF_ZERO.
Exemplos
> 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