Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция
Возвращает идентификатор ячейки H3 в формате BIGINT, который соответствует данной точке на указанном разрешении.
Применяется к: Databricks SQL предварительная версия
Databricks Runtime 11.3 LTS и выше
Синтаксис
h3_pointash3 ( geographyExpr, resolutionExpr )
Аргументы
-
geographyExpr
: двоичное или СТРОКовое выражение, представляющее географию точек в WKB, WKT или GeoJSON. Ожидается, что география будет иметь координаты долготы и широты в градусах в системе координат WGS84. -
resolutionExpr
: выражение INT, значение которого должно находиться между0
и15
включительно, задавая разрешение для идентификатора ячейки H3.
Возвраты
Возвращает идентификатор ячейки H3 в формате BIGINT, который соответствует указанной точке на заданном разрешении.
Функция возвращает значение NULL, если любое из входных выражений равно NULL. Если первый входной аргумент имеет тип BINARY, входное значение, как ожидается, будет описание точки WKB . Если первый входной аргумент имеет тип STRING, входное значение, как ожидается, будет либо WKT](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry), либо описание GeoJSON точки. Измерение входной точки может быть 2D, 3DZ, 3DM или 4D. Ожидается, что значения долготы и широты в описании WKB, WKT или GeoJSON будут находиться в эталонной системе координат WGS84. Функция возвращает значение NULL, если первые входные данные соответствуют пустой точке.
Условия ошибок
- Если
geographyExpr
имеет тип BINARY и значение является недопустимым WKB или не представляет точку, функция возвращает WKB_PARSE_ERROR. - Если
geographyExpr
имеет тип STRING и значение является недопустимым WKT или не представляет точку, функция возвращает WKT_PARSE_ERROR. - Если
geographyExpr
имеет тип STRING и значение является недопустимым GeoJSON или не представляет точку, функция возвращает GEOJSON_PARSE_ERROR. - Если значение
resolutionExpr
меньше0
или больше15
, функция возвращает H3_INVALID_RESOLUTION_VALUE.
Примеры
-- Simple example.
> SELECT h3_pointash3('POINT(100 45)', 6)
604116085645508607
-- The H3 cell ID for the Golden Gate Bridge at resolution 13.
> SELECT h3_pointash3('POINT(-122.4783 37.8199)', 13)
635714569676958015
-- The function returns NULL if the input is the empty point.
> SELECT h3_pointash3('{"type":"Point","coordinates":[]}', 15)
null
-- Feeding a multipoint in WKT format instead of a point.
> SELECT h3_pointash3('MULTIPOINT(100 45)', 6)
[WKT_PARSE_ERROR] Error parsing WKT: Invalid or unsupported type 'MULTIPOINT' at position 1
-- Feeding an invalid GeoJSON string ("type" value is not correct).
> SELECT h3_pointash3('{"type":"POINT","coordinates":[]}', 15)
[GEOJSON_PARSE_ERROR] Error parsing GeoJSON: Invalid or unsupported type '"POINT"' at position 9
-- Feeding an invalid WKB (invalid endianness value)
> SELECT h3_pointash3(unhex('0201000000516b9a779c9e5ec0c5feb27bf2e84240'), 2)
[WKB_PARSE_ERROR] Error parsing WKB: Invalid byte order 2 at position 1
-- Resolution is out of range.
> SELECT h3_pointash3('POINT(-122.4783 37.8199)', 16)
[H3_INVALID_RESOLUTION_VALUE] H3 resolution 16 must be between 0 and 15, inclusive