Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция
Область применения: Databricks SQL
Databricks Runtime 11.3 LTS и выше
Returns an ARRAY of H3 cell IDs (represented as STRING) corresponding to hexagons or pentagons, of the specified resolution, that are contained by the input areal geography.
Синтаксис
h3_polyfillash3string ( geographyExpr, resolutionExpr )
Аргументы
-
geographyExpr
: двоичное или СТРОКовое выражение, представляющее ареальную географию (многоугольник или многополигон) в WKB, WKT или GeoJSON. Ожидается, что география будет иметь координаты долготы и широты в градусах в системе координат WGS84. -
resolutionExpr
: выражение INT, значение которого ожидается между0
и15
включительно, определяющее разрешение идентификаторов ячеек H3.
Возвраты
An ARRAY of STRING values corresponding to the H3 cell IDs, of the specified resolution, that are contained by the input areal geography.
Функция возвращает значение NULL, если любое из входных выражений равно NULL. Если первый входной аргумент имеет тип BINARY, входное значение должно быть описанием многоугольника или множества многоугольников в формате WKB. Если первый входной аргумент имеет тип STRING, входное значение должно быть описанием многоугольника или множества многоугольников в формате WKT или GeoJSON. The dimension of the input polygon or multipolygon can be 2D, 3DZ, 3DM, or 4D.
Условия ошибок
- Если
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 where the input is a triangle in WKT format.
> SELECT h3_polyfillash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 2)
[82268ffffffffff,82269ffffffffff,822987fffffffff,8226e7fffffffff,822997fffffffff,8226f7fffffffff,822657fffffffff,8229affffffffff]
-- Simple example where the input is a triangle in hexadecimal WKB format.
> SELECT h3_polyfillash3string(unhex('0103000000010000000400000050fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240'), 2)
[82268ffffffffff,82269ffffffffff,822987fffffffff,8226e7fffffffff,822997fffffffff,8226f7fffffffff,822657fffffffff,8229affffffffff]
-- Feeding an empty linestring in GeoJSON format (as opposed to a polygon or multipolygon).
> SELECT h3_polyfillash3string('{"type":"LineString","coordinates":[]}', 2)
[GEOJSON_PARSE_ERROR] Error parsing GeoJSON: Invalid or unsupported type '"LineString"' at position 9
-- Feeding an invalid WKB (invalid endianness value)
> SELECT h3_polyfillash3string(unhex('020700000000'), 2)
[WKB_PARSE_ERROR] Error parsing WKB: Invalid byte order 2 at position 1
-- Feeding an invalid polygon in WKT (polygon is not closed)
> SELECT h3_polyfillash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-74.0060 40.7128))', 2)
[WKT_PARSE_ERROR] Error parsing WKT: Found non-closed ring at position 80
-- Resolution is out of range.
> SELECT h3_polyfillash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 16)
[H3_INVALID_RESOLUTION_VALUE] H3 resolution 16 must be between 0 and 15, inclusive