Delen via


h3_kring functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan 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 ARRAY van waarden van hetzelfde type als het type van de h3CellIdExpr-expressie, die overeenkomen 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 is.

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 waardoor een H3-ID geldig is, is dat de waarde tussen 0x08001fffffffffff en 0x08ff3b6db6db6db6 ligt. 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 een TEKENREEKS is die niet kan worden geconverteerd naar een BIGINT of overeenkomt met een BIGINT-waarde die kleiner is dan 0x08001fffffffffff of groter is dan 0x08ff3b6db6db6db6, retourneert de functie H3_INVALID_CELL_ID.
  • Als kExpr 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