Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция
Применяется к:
Databricks SQL
Databricks Runtime 16.3 и более поздних версий
Эта функция ведет себя так же, как h3_coverash3string, но возвращается NULL вместо ошибки, если первый аргумент недопустим.
ARRAY Возвращает значения, BIGINT представляющие идентификаторы ячеек H3. Эти значения соответствуют минимальному набору шестиугольников или пятиугольников с указанным разрешением, который полностью охватывает входную линейную или ареальную географию.
Синтаксис
h3_try_coverash3string ( geographyExpr, resolutionExpr )
Аргументы
-
geographyExpr: выражениеBINARYSTRING, представляющее линейную (лайнстринг или мультилайнстринг) или площадную (полигон или мультиполигон) географию в WKB, WKT или GeoJSON. Ожидается, что география будет иметь координаты долготы и широты в градусах в системе координат WGS84. -
resolutionExprINT: выражение со значением между0и15включительно, которая указывает разрешение для идентификаторов ячеек H3.
Возвраты
ARRAY Набор значенийBIGINT, соответствующий минимальному набору шестиугольников или пятиугольников в указанном разрешении, который полностью охватывает входную линейную или ареальную географию.
Функция возвращается NULL , если какой-либо из входных выражений имеет значение NULL.
Если первый входной аргумент имеет тип BINARY, входное значение должно быть описанием линии, многоугольника, многофланговой линии или мультиполигона.
Если первый входной аргумент имеет тип STRING, входное значение должно быть либо WKT, либо описание GeoJSON линейной строки, многоугольника, многострочной строки или мультиполигона.
Измерение входной линейной строки, многоугольника, многолинейной строки или сложного многоугольника может быть 2D, 3DZ, 3DM или 4D.
Функция возвращает NULL, если первый аргумент соответствует недопустимому WKB, WKT или GeoJSON или не представляет линию, многоугольник, многострочную или многополигон.
Условия ошибок
- Если значение
resolutionExprменьше0или больше15, функция возвращает H3_INVALID_RESOLUTION_VALUE.
Примеры
-- Simple example where the input is a triangle in WKT format.
> SELECT h3_coverash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 0);
[8027fffffffffff,8029fffffffffff,802bfffffffffff,8049fffffffffff]
-- Simple example where the input is a triangle in hexadecimal WKB format.
> SELECT h3_coverash3string(unhex('0103000000010000000400000050fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240'), 0);
[8027fffffffffff,8029fffffffffff,802bfffffffffff,8049fffffffffff]
-- Simple example where the input is a linestring in GeoJSON format.
SELECT h3_coverash3string('{"type":"LineString","coordinates":[[-122.4194,37.7749],[-118.2437,34.0522],[-74.0060,40.7128]]}', 1);
[8148fffffffffff, 8129bffffffffff, 812a3ffffffffff, 812abffffffffff, 81267ffffffffff, 8126fffffffffff, 81283ffffffffff]
-- Feeding an empty multipoint in GeoJSON format (as opposed to a linestring, polygon, multilinestring, or multipolygon).
> SELECT h3_try_coverash3string('{"type":"MultiPoint","coordinates":[]}', 2);
null
-- Feeding an invalid WKB (invalid endianness value)
> SELECT h3_try_coverash3string(unhex('020700000000'), 2);
null
-- Feeding an invalid polygon in WKT (polygon is not closed)
> SELECT h3_try_coverash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-74.0060 40.7128))', 2);
null
-- Resolution is out of range.
> SELECT h3_try_coverash3string('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