h3_tochildren 関数

適用対象:check marked yes Databricks SQL Databricks Runtime 11.3 LTS 以降

指定した解像度の入力 H3 セルの子 H3 セルの配列を返します。

構文

h3_tochildren ( h3cellIdExpr, resolutionExpr )

引数

  • h3CellIdExpr: H3 セル ID を表す BIGINT 式または 16 進数の STRING 式。
  • resolutionExpr: 子 H3 セル ID の解像度を指定し、値が h3_resolution(h3CellIdExpr) と 15 の間であると想定される INT 式。

戻り値

指定した解像度の入力 H3 セルの子 H3 セル ID に対応する、h3CellIdExpr 式の型と同じ型の値の配列。

2 つの入力式のいずれかが NULL の場合、この関数は NULL を返します。 この関数は、入力引数が有効な H3 セル ID であるかどうかに関する部分的な検証を行います。 有効な H3 ID の必要条件 (ただし、十分条件ではない) は、その値が 0x08001fffffffffff と 0x08ff3b6db6db6db6 の間にあることです。 入力セル ID が有効なセル ID でない場合、関数の動作は未定義です。 resolutionExpr の値が入力 H3 セル ID の解像度と等しい場合、返される配列には入力 H3 セル ID と等しい単一の値が含まれます。

エラー条件

  • h3CellIdExpr が BIGINT に変換できない STRING の場合、または、0x08001fffffffffff より小さいか 0x08ff3b6db6db6db6 より大きい BIGINT 値に対応する STRING の場合、関数は H3_INVALID_CELL_ID を返します。
  • resolutionExpr が h3_resolution(h3CellIdExpr) より小さいか 15 より大きい場合、関数は H3_INVALID_RESOLUTION_VALUE を返します。

例

-- Simple example taking a long as input.
> SELECT h3_tochildren(599686042433355775, 6);
  [604189641121202175,604189641255419903,604189641389637631,604189641523855359,604189641658073087,604189641792290815,604189641926508543]

-- Simple example taking a hexadecimal string as input.
> SELECT h3_tochildren('85283473fffffff', 6);
  [862834707ffffff,86283470fffffff,862834717ffffff,86283471fffffff,862834727ffffff,86283472fffffff,862834737ffffff]

-- First input is an invalid H3 cell ID.
> SELECT h3_tochildren(0, 15);
  [H3_INVALID_CELL_ID] 0 is not a valid H3 cell ID

-- Second input is an invalid resolution value.
> SELECT h3_tochildren('85283473fffffff', 0);
  [H3_INVALID_RESOLUTION_VALUE] H3 resolution 0 must be between 5 and 15, inclusive