array_sort
기능
적용 대상: Databricks SQL Databricks 런타임
func
에 따라 정렬된 array
를 반환합니다.
구문
array_sort(array, func)
인수
array
: 배열로 평가되는 식입니다.func
: 정렬 순서를 정의하는 람다 함수입니다.
반품
결과 형식은 array
형식과 일치합니다.
func
를 생략하면 배열이 오름차순으로 정렬됩니다.
func
가 제공되면 배열의 두 요소를 나타내는 두 개의 인수가 필요합니다.
함수는 첫 번째 요소가 두 번째 요소보다 작은지, 같은지 또는 큰지에 따라 -1, 0 또는 1을 반환해야 합니다.
func
가 다른 값(NULL 포함)을 반환하면 array_sort
가 실패하고 오류가 발생합니다.
NULL 요소는 반환된 배열의 끝에 배치됩니다.
예제
> SELECT array_sort(array(5, 6, 1),
(left, right) -> CASE WHEN left < right THEN -1
WHEN left > right THEN 1 ELSE 0 END);
[1,5,6]
> SELECT array_sort(array('bc', 'ab', 'dc'),
(left, right) -> CASE WHEN left IS NULL and right IS NULL THEN 0
WHEN left IS NULL THEN -1
WHEN right IS NULL THEN 1
WHEN left < right THEN 1
WHEN left > right THEN -1 ELSE 0 END);
[dc,bc,ab]
> SELECT array_sort(array('b', 'd', null, 'c', 'a'));
[a,b,c,d,NULL]