h3_toparent 関数

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

指定した解像度で、入力 H3 セルの親 H3 セルを返します。

構文

h3_toparent ( h3cellIdExpr, resolutionExpr )

引数

  • h3CellIdExpr: H3 セル ID を表す BIGINT 式または 16 進数の STRING 式。
  • resolutionExpr : 親 H3 セル ID の解像度を指定する、値が 0 と h3_resolution(h3CellIdExpr) の間である 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 が 0 より小さいか h3_resolution(h3CellIdExpr) より大きい場合、関数は H3_INVALID_RESOLUTION_VALUE を返します。

例

-- Simple example taking a long as input.
> SELECT h3_toparent(599686042433355775, 0);
  577199624117288959

-- Simple example taking a valid hexadecimal string as input.
> SELECT h3_toparent('85283473fffffff', 0);
  8029fffffffffff

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

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