Share via


A h3_uncompact függvény

A következőkre vonatkozik:jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime 11.3 LTS és újabb

Feloldja a H3-cellák bemeneti készletét a megadott felbontáshoz. A nem kivitelezett készlet ugyanazokat a H3 cellákat fedi le, mint az eredeti, a megadott felbontásban lévő cellákat használva.

Syntax

h3_uncompact ( h3CellIdsExpr, resolutionExpr )

Argumentumok

  • h3CellIdsExpr: BIGINTs kifejezés tömbje, vagy hexadecimális STRINGs-kifejezés tömbje, amely H3 cellaazonosítók tömbét jelöli.
  • resolutionExpr: Egy EGÉSZ SZÁM kifejezés, amelynek értéke várhatóan a bemeneti H3 cellák maximális felbontása és 15 a befogadó között van, a kimeneti TÖMBben a H3 cellaazonosítók felbontásának megadásával.

Válaszok

A tömb a bemeneti TÖMB kifejezésben h3cellIdsExprszereplő értékekkel azonos típusú tömb. A kimeneti TÖMB H3 cellaazonosítóinak felbontása megegyezik a resolutionExpr.

A függvény NULL értéket ad vissza, ha a bemenet NULL. A függvény részlegesen ellenőrzi, hogy a bemeneti argumentum érvényes H3 cellaazonosító-e. Egy érvényes H3-azonosító szükséges, de nem megfelelő feltétele, hogy értéke a és a között 0x08001fffffffffff0x08ff3b6db6db6db6legyen. A függvény viselkedése nincs meghatározva, ha a bemeneti TÖMB egyik cellaazonosítója nem érvényes cellaazonosító. A bemeneti tömb NULL értékeit a rendszer figyelmen kívül hagyja.

Hibafeltételek

  • Ha h3CellIdExpr olyan SZTRING, amely nem konvertálható BIGINT-vé, vagy olyan BIGINT-értéknek felel meg, amely kisebb 0x08001fffffffffff vagy nagyobb0x08ff3b6db6db6db6, a függvény H3_INVALID_CELL_ID ad vissza.
  • Ha resolutionExpr kisebb, mint a bemeneti TÖMB H3 cellának maximális felbontása, vagy nagyobb, akkor 15a függvény H3_INVALID_RESOLUTION_VALUE ad vissza.

Példák

-- Example where the input is an ARRAY of BIGINTs
> SELECT h3_uncompact(ARRAY(599686030622195711,599686015589810175,599686014516068351,599686034917163007,599686029548453887,599686032769679359,599686198125920255,599686023106002943,599686027400970239,599686013442326527,599686012368584703,599686018811035647,595182446027210751), 5);
  [599686030622195711,599686015589810175,599686014516068351,599686034917163007,599686029548453887,599686032769679359,599686198125920255,599686023106002943,599686027400970239,599686013442326527,599686012368584703,599686018811035647,599686038138388479,599686039212130303,599686040285872127,599686041359613951,599686042433355775,599686043507097599,599686044580839423]

-- In this example we verify that uncompacting the compacted set of the 2-ring of an H3 cell at the cell’s resolution returns the original 2-ring.
> SELECT COUNT(*) FROM ((SELECT explode(h3_uncompact(h3_compact(h3_kring(599686042433355775, 2)), h3_resolution(599686042433355775)))) MINUS (SELECT  explode(h3_kring(599686042433355775, 2))))
  0

-- Second input is an invalid resolution value.
> SELECT h3_uncompact(ARRAY(599686030622195711,599686015589810175,599686014516068351,599686034917163007,599686029548453887,599686032769679359,599686198125920255,599686023106002943,599686027400970239,599686013442326527,599686012368584703,599686018811035647,595182446027210751), 2);
  [H3_INVALID_RESOLUTION_VALUE] H3 resolution 2 must be between 5 and 15, inclusive