ARRAY_SORT 関数 - Amazon Redshift

Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、ブログ記事を参照してください。

ARRAY_SORT 関数

入力配列を昇順または降順でソートしたバージョンを作成します。結果内で NULL 値が表示される場所を指定できます。関数は NULL セーフです。つまり、NULL は既知のオブジェクトとして扱われます。

構文

ARRAY_SORT( array [, sort_ascending [, nulls_first]] )

引数

array

ソートする配列を指定する SUPER 式。

sort_ascending

配列を昇順でソートするか、降順でソートするかを指定するブール値。

  • 要素を昇順にソートするには、TRUE を指定します。

  • 要素を降順でソートするには、FALSE を指定します。

デフォルトは TRUE です。

nulls_first

NULL の位置を指定するブール値。

  • ソートされた配列の先頭に NULL を配置するには、TRUE を指定します。

  • ソートされた配列の最後に NULL を配置するには、FALSE を指定します。

戻り型

ARRAY_SORT 関数は、SUPER 型を返します。

注記

混合データ型を含む配列をソートする場合、要素は次のタイプの優先順位に従って順序付けられます。

  • ブール値

  • 数値

  • 文字列値

  • 配列

  • オブジェクト/ディクショナリ

各タイプカテゴリ内では、要素は自然な順序に従ってソートされます (例: 数値は数値順にソートされ、文字列はアルファベット順にソートされます)。

次の例は、ARRAY_SORT 関数を示しています。

-- Ascending order (default) SELECT ARRAY_SORT(ARRAY('b', 'a', 0, NULL, 1, false)); array_sort -------------------------- [false,0,1,"a","b",null] (1 row) -- Descending order SELECT ARRAY_SORT(ARRAY('b', 'a', 0, NULL, 1, false), False); array_sort -------------------------- [null,"b","a",1,0,false] (1 row) -- Descending order with NULLs at the end of the sorted array SELECT ARRAY_SORT(ARRAY('b', 'a', 0, NULL, 1, false), False, False); array_sort -------------------------- ["b","a",1,0,false,null] (1 row)

関連情報