적용 대상:
Databricks SQL
Databricks Runtime 11.3 LTS 이상
str의 발생 항목을 기준으로 delim을 분할하고 partNum 파트를 반환합니다.
구문
split_part(str, delim, partNum)
인수
-
strSTRING: 분할할 식입니다. -
delimiter: 파트의STRING구분 기호 역할을 하는 식입니다. -
partNumINTEGER: 반환할 파트를 선출하는 식입니다.
반품
STRING.
partNum
>= 1일 경우: partNum의 시작 부분부터 계산된 str 파트 수가 반환됩니다.
partNum
<= -1일 경우: abs(partNum)의 끝 부분부터 계산된 str 파트 수가 반환됩니다.
다음의 부분 partNum수를 초과하는 경우str: 함수는 빈 문자열을 반환합니다.
0 partNum 이면 split_part INVALID_INDEX_OF_ZERO 발생합니다.
예제
> 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