h3_kring
-functie
Van toepassing op: Databricks SQL Databricks Runtime 11.3 LTS en hoger
Retourneert de H3-cellen die zich binnen (raster) afstand k
van de oorspronkelijke cel bevinden. De set van deze H3-cellen wordt de k
-ring van de oorspronkelijke cel genoemd.
Syntaxis
h3_kring ( h3CellIdExpr, kExpr )
Argumenten
h3CellIdExpr
: Een BIGINT-expressie of een hexadecimale TEKENREEKS-expressie die een H3-cel-id vertegenwoordigt.kExpr
: Een INTEGER-expressie die de rasterafstand aangeeft.kExpr
moet niet-negatief zijn.
Retouren
Een MATRIX van waarden van hetzelfde type als het type expressie h3CellIdExpr
, die overeenkomt met de H3-cel-id's met dezelfde resolutie als de invoer H3-cel en zich binnen de rasterafstand k
van de invoer H3-cel bevinden, waarbij k
de waarde van de kExpr
cel .
De functie retourneert NULL als een van de invoerexpressies NULL is.
De functie voert gedeeltelijke validatie uit met betrekking tot of het invoerargument een geldige H3-cel-id is. Een noodzakelijke, maar niet voldoende voorwaarde voor een geldige H3-id is dat de waarde tussen 0x08001fffffffffff
en 0x08ff3b6db6db6db6
.
Het gedrag van de functie is niet gedefinieerd als de invoercel-id geen geldige cel-id is.
Als de waarde van de rasterafstand nul is, bevat de geretourneerde matrix één waarde die gelijk is aan de cel-id van de H3-invoer.
Foutvoorwaarden
- Als
h3CellIdExpr
dit een TEKENREEKS is die niet kan worden geconverteerd naar een BIGINT of overeenkomt met een BIGINT-waarde die kleiner is dan0x08001fffffffffff
of groter0x08ff3b6db6db6db6
is, retourneert de functie H3_INVALID_CELL_ID. - Als
kExpr
dit negatief is, retourneert de functie H3_INVALID_GRID_DISTANCE_VALUE.
Voorbeelden
-- Simple example where the first argument is a BIGINT.
> SELECT h3_kring(599686042433355775, 1)
[599686042433355775,599686030622195711,599686044580839423,599686038138388479,599686043507097599,599686015589810175,599686014516068351]
-- Simple example where the first argument is a STRING.
> SELECT h3_kring('85283473fffffff', 1)
[85283473fffffff,85283447fffffff,8528347bfffffff,85283463fffffff,85283477fffffff,8528340ffffffff,8528340bfffffff]
-- First input is an invalid H3 cell ID.
> SELECT h3_kring(0, 0)
[H3_INVALID_CELL_ID] 0 is not a valid H3 cell ID
-- Second input is an invalid grid distance value.
> SELECT h3_kring('85283473fffffff', -1)
[H3_INVALID_GRID_DISTANCE_VALUE] H3 grid distance -1 must be non-negative