h3_polyfillash3string
函數
適用於:磚的SQLDatabricks Runtime 11.2及以上版本
返回H3單元格id的數組(表示為STRING),對應於輸入區域地理包含的指定分辨率的六邊形或五邊形。
返回
與指定分辨率的H3單元格id對應的STRING值數組,由輸入區域地理包含。
如果任何一個輸入表達式為NULL,則該函數返回NULL。如果第一個輸入參數是BINARY類型,則輸入值應該是WKB多邊形或多多邊形的描述。如果第一個輸入參數是STRING類型,則輸入值應該是WKT或者是GeoJSON多邊形或多多邊形的描述。輸入多邊形或多多邊形的維度可以是2D、3DZ、3DM、4D。
錯誤條件
如果
geographyExpr
是二進製類型,值是無效的WKB或不表示多邊形或多多邊形,函數返回WKB_PARSE_ERROR。如果
geographyExpr
是STRING類型並且值是無效的WKT或不表示多邊形或多多邊形,函數返回WKT_PARSE_ERROR。如果
geographyExpr
是字符串類型,值是無效的GeoJSON或不代表多邊形或多多邊形,函數返回GEOJSON_PARSE_ERROR。如果
resolutionExpr
小於0
或者大於15
,函數返回H3_INVALID_RESOLUTION_VALUE。
例子
—簡單的例子,其中輸入是一個三角形在WKT格式。>選擇h3_polyfillash3string(“多邊形((-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]—一個簡單的例子,輸入是一個十六進製WKB格式的三角形。>選擇h3_polyfillash3string(unhex(“0103000000010000000400000050 fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240”),2)(82268ffffffffff,82269ffffffffff,822987fffffffff,8226e7fffffffff,822997fffffffff,8226f7fffffffff,822657fffffffff,8229affffffffff]—在GeoJSON格式(與多邊形或多多邊形相反)中輸入空行字符串。>選擇h3_polyfillash3string({“類型”:“LineString”、“坐標”:[]}”,2)(GEOJSON_PARSE_ERROR]錯誤解析GeoJSON:無效的或不支持的類型“LineString”在位置9——輸入無效的WKB(無效的端序值)>選擇h3_polyfillash3string(unhex(“020700000000”),2)(WKB_PARSE_ERROR]錯誤解析WKB:無效的字節訂單2在位置1在WKT中輸入一個無效的多邊形(多邊形未關閉)>選擇h3_polyfillash3string('多邊形((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-74.0060 40.7128))',2)(WKT_PARSE_ERROR]錯誤解析WKT:發現非-關閉環在位置80——分辨率超出範圍。>選擇h3_polyfillash3string(“多邊形((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))”,16)(H3_INVALID_RESOLUTION_VALUE]H3決議16必須是之間的0和15,包容