Compartir a través de


Función h3_toparent

Se aplica a casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 11.3 LTS y versiones posteriores

Esta función se usa para obtener la celda H3 primaria de la celda H3 de entrada en la resolución que se especifique.

Sintaxis

h3_toparent ( h3cellIdExpr, resolutionExpr )

Argumentos

  • h3CellIdExpr: expresión BIGINT o expresión STRING hexadecimal que representa un identificador de celda H3.
  • resolutionExpr: expresión INT cuyo valor se espera que esté entre 0 y h3_resolution(h3CellIdExpr) (incluidos). Se usa para especificar la resolución de los id. de la celda H3 primaria.

Devoluciones

Un valor del mismo tipo que el de la expresión h3CellIdExpr, que se corresponde con el id. de la celda H3 primaria de la celda H3 de entrada en la resolución que se especifique.

La función devuelve NULL si alguna de las dos expresiones de entrada es NULL. La función realiza una validación parcial con respecto a si el argumento de entrada es un identificador de celda H3 válido. Una condición necesaria, pero no suficiente para un identificador H3 válido es que su valor está entre 0x08001fffffffffff y 0x08ff3b6db6db6db6. El comportamiento de la función no está definido si el identificador de celda de entrada no es un identificador de celda válido. Si el valor de resolutionExpr es igual a la resolución del id. de la celda H3 de entrada, se devolverá el id. de la celda H3 de entrada.

Condiciones de error

  • Si h3CellIdExpr es una cadena que no se puede convertir en BIGINT o corresponde a un valor BIGINT menor que 0x08001fffffffffff o mayor que 0x08ff3b6db6db6db6, la función devuelve H3_INVALID_CELL_ID.
  • Si resolutionExpr es menor que 0 o mayor que h3_resolution(h3CellIdExpr), la función devuelve H3_INVALID_RESOLUTION_VALUE.

Ejemplos

-- Simple example taking a long as input.
> SELECT h3_toparent(599686042433355775, 0)
  577199624117288959

-- Simple example taking a valid hexadecimal string as input.
> SELECT h3_toparent('85283473fffffff', 0)
  8029fffffffffff

-- First input is an invalid H3 cell ID.
> SELECT h3_toparent(0, 0)
  [H3_INVALID_CELL_ID] 0 is not a valid H3 cell ID

-- Second input is an invalid resolution value.
> SELECT h3_toparent('85283473fffffff', -1)
  [H3_INVALID_RESOLUTION_VALUE] H3 resolution -1 must be between 0 and 5, inclusive