Поделиться через


Функция h3_ischildof

Область применения: флажок Databricks SQL флажок Databricks Runtime 11.3 LTS и выше

Возвращает значение true, если первая ячейка H3 равна второй ячейке H3 или является ее дочерним элементом.

Синтаксис

h3_ischildof ( h3CellId1Expr, h3cellId2Expr )

Аргументы

  • h3CellId1Expr: выражение BIGINT или шестнадцатеричное строковое выражение, представляющее идентификатор ячейки H3.
  • h3CellId2Expr: выражение BIGINT или шестнадцатеричное строковое выражение, представляющее идентификатор ячейки H3.

Возвраты

Значение типа BOOLEAN, указывающее, совпадает ли первая ячейка H3 со второй ячейки H3 или является ее дочерним элементом.

Функция возвращает значение NULL, если любые из входных данных равны NULL. Функция выполняет частичную проверку, является ли любой из двух входных аргументов действительным идентификатором ячейки H3. Необходимое, но недостаточное условие для допустимого идентификатора H3 заключается в том, что его значение находится в диапазоне от 0x08001fffffffffff до 0x08ff3b6db6db6db6. Поведение функции не определено, если какой-либо из двух идентификаторов входных ячеек не является допустимым идентификатором ячейки.

Условия ошибок

  • Если h3CellId1Expr или h3CellId2Expr является строкой, которую невозможно преобразовать в BIGINT, или соответствует значению BIGINT, которое меньше 0x08001fffffffffff или больше 0x08ff3b6db6db6db6, то функция возвращает H3_INVALID_CELL_ID.

Примеры

-- Simple example taking two longs as input.
> SELECT h3_ischildof(608693241318998015, 599686042433355775)
  true

-- Simple example taking two strings as input.
> SELECT h3_ischildof('88283471b9fffff', '85283473fffffff')
  true

-- Simple example taking a long integer and a string as input.
> SELECT h3_ischildof(580260664489017343, '85283473fffffff')
  false

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

-- Second input is an invalid H3 cell ID.
> SELECT h3_ischildof(608693241318998015, 'xyz')
  [H3_INVALID_CELL_ID] 'xyz' is not a valid H3 cell ID