h3_boundaryasgeojson
函数
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本
以 GeoJSON 格式返回输入 H3 单元格的多边形边界。
语法
h3_boundaryasgeojson ( h3CellIdExpr )
参数
h3CellIdExpr
:表示 H3 单元格 ID 的 BIGINT 表达式或十六进制 STRING 表达式。
返回
STRING 类型的值,表示输入 H3 单元格的多边形边界(采用 GeoJSON 格式)。
如果输入表达式为 NULL,则该函数返回 NULL。
该函数对输入参数是否为有效的 H3 单元格 ID 进行部分验证。 有效 H3 ID 的必要不充分条件是其值介于 0x08001fffffffffff
和 0x08ff3b6db6db6db6
之间。
如果输入单元格 ID 不是有效的单元格 ID,则表示该函数的行为未定义。
错误条件
- 如果
h3CellIdExpr
是无法转换为 BIGINT 的 STRING 或对应于小于0x08001fffffffffff
或大于0x08ff3b6db6db6db6
的 BIGINT 值,则该函数返回 H3_INVALID_CELL_ID。
示例
-- Input a BIGINT representing a hexagonal cell.
> SELECT h3_boundaryasgeojson(599686042433355775)
{"type":"Polygon","coordinates":[[[-121.91508032706,37.271355866732],[-121.86222328902,37.353926450852],[-121.9235499963,37.428341186094],[-122.03773496427 37.420128677678],[-122.09042892904,37.337556084353],[-122.02910130919,37.263197974618],[-121.91508032706,37.271355866732]]]}
-- Input a STRING representing a pentagonal cell.
> SELECT h3_boundaryasgeojson('8009fffffffffff')
{"type":"Polygon","coordinates":[[[-10.444977544778,63.095054077525],[5.5236465492903,55.706768465152],[25.082722326708,58.401544870353],[31.831280499087,68.92995788194],[0.32561035194326,73.310223685444],[-10.444977544778,63.095054077525]]]}
-- Input is an invalid H3 cell ID.
> SELECT h3_boundaryasgeojson(0)
[H3_INVALID_CELL_ID] 0 is not a valid H3 cell ID