ARRAY_SORT
对数组中的元素按升序进行排序。
语法
ARRAY_SORT(<array>[, 'ASC'|'DESC', 'NULLS FIRST'|'NULLS LAST'])
参数 | 默认值 | 描述 |
---|---|---|
ASC | 是 | 指定排序顺序为升序,从最小到最大排列元素。 |
DESC | 否 | 指定排序顺序为降序,从最大到最小排列元素。 |
NULLS FIRST | 是 | 确定 NULL 值应出现在排序输出的开头。 |
NULLS LAST | 否 | 确定 NULL 值应出现在排序输出的末尾。 |
示例
此示例展示了数组默认按升序排序,元素从最小到最大排列:
SELECT ARRAY_SORT([1, 4, 3, 2]);
-[ RECORD 1 ]-----------------------------------
array_sort([1, 4, 3, 2]): [1,2,3,4]
此示例展示了数组按降序排序,元素从最大到最小排列:
SELECT ARRAY_SORT([1, 4, 3, 2], 'DESC');
-[ RECORD 1 ]-----------------------------------
array_sort([1, 4, 3, 2], 'desc'): [4,3,2,1]
此示例展示了在降序排序中如何处理 NULL 值,NULL 值出现在所有非 NULL 值之前:
SELECT ARRAY_SORT([1, 4, 3, 2, NULL], 'DESC');
-[ RECORD 1 ]-----------------------------------
array_sort([1, 4, 3, 2, null], 'desc'): [NULL,4,3,2,1]
此示例展示了在降序排序中确保 NULL 值出现在排序输出的末尾:
SELECT ARRAY_SORT([1, 4, 3, 2, NULL], 'DESC', 'NULLS LAST');
-[ RECORD 1 ]-----------------------------------
array_sort([1, 4, 3, 2, null], 'desc', 'nulls last'): [4,3,2,1,NULL]