共用方式為


h3_tochildren函式

適用於: 檢查標示為是 Databricks SQL 檢查標示為是 Databricks Runtime 11.3 LTS 和更新版本

傳回輸入 H3 儲存格之子系 H3 儲存格在指定解析度的陣列。

語法

h3_tochildren ( h3cellIdExpr, resolutionExpr )

引數

  • h3CellIdExpr:BIGINT 運算式,或代表 H3 單元格標識符的十六進位 STRING 運算式。
  • resolutionExpr:INT 運算式,其值預期介於 和 15 內含之間h3_resolution(h3CellIdExpr),並指定子系 H3 單元格標識碼的解析度。

傳回

與表達式類型相同之 h3CellIdExpr 值的 ARRAY,對應至指定解析度上輸入 H3 單元格的子系 H3 單元格識別碼。

如果兩個輸入表達式中的任何一個為 NULL,則此函式會傳回 NULL。 函式會針對輸入自變數是否為有效的 H3 單元格標識碼執行部分驗證。 有效 H3 識別符的必要條件,但沒有足夠的條件是其值介於和0x08ff3b6db6db6db6之間0x08001fffffffffff。 如果輸入儲存格標識碼不是有效的儲存格標識碼,則函式的行為是未定義的。 如果的值 resolutionExpr 等於輸入 H3 單元格標識碼的解析度,則傳回的數位會包含等於輸入 H3 單元格標識碼的單一值。

錯誤條件

  • 如果 h3CellIdExpr 是無法轉換成 BIGINT 的 STRING,或對應至小於 0x08001fffffffffff 或大於 0x08ff3b6db6db6db6的 BIGINT 值,則函式會 傳回H3_INVALID_CELL_ID
  • 如果 resolutionExpr 小於或大於 15,則函式會傳回H3_INVALID_RESOLUTION_VALUEh3_resolution(h3CellIdExpr)

範例

-- 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