Dela via


Funktionen h3_tochildren

Gäller för: markerad ja Databricks SQL markerad ja Databricks Runtime 11.3 LTS och senare

Returnerar en matris med underordnade H3-celler i indata-H3-cellen med den angivna upplösningen.

Syntax

h3_tochildren ( h3cellIdExpr, resolutionExpr )

Argument

  • h3CellIdExpr: Ett BIGINT-uttryck eller ett hexadecimalt STRING-uttryck som representerar ett H3-cell-ID.
  • resolutionExpr: Ett INT-uttryck, vars värde förväntas vara mellan h3_resolution(h3CellIdExpr) och 15 inkluderande, som anger upplösningen för underordnade H3-cell-ID:er.

Returer

En MATRIS med värden av samma typ som typen av h3CellIdExpr uttryck, som motsvarar underordnade H3-cell-ID:er för indata-H3-cellen med den angivna upplösningen.

Funktionen returnerar NULL om något av de två indatauttrycken är NULL. Funktionen validerar delvis om indataargumentet är ett giltigt H3-cell-ID. Ett nödvändigt men inte tillräckligt villkor för ett giltigt H3-ID är att dess värde är mellan 0x08001fffffffffff och 0x08ff3b6db6db6db6. Funktionens beteende är odefinierat om indatacells-ID:t inte är ett giltigt cell-ID. Om värdet för resolutionExpr är lika med upplösningen för indata-H3-cell-ID:t innehåller den returnerade matrisen ett enda värde som är lika med indata-H3-cell-ID:t.

Feltillstånd

  • Om h3CellIdExpr är en STRÄNG som inte kan konverteras till en BIGINT eller motsvarar ett BIGINT-värde som är mindre än eller större än 0x08001fffffffffff 0x08ff3b6db6db6db6returnerar funktionen H3_INVALID_CELL_ID.
  • Om resolutionExpr är mindre än h3_resolution(h3CellIdExpr) eller större än 15returnerar funktionen H3_INVALID_RESOLUTION_VALUE.

Exempel

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