h3_polyfillash3
函数
适用于:砖的SQL砖运行时11.2及以上
返回一个数组H3细胞id(表示为BIGINT)相应的六边形或五角大楼,指定的决议,所包含的输入区域地理。
返回
数组的BIGINT值对应H3细胞id指定的决议,所包含的输入区域地理。
函数返回NULL如果任何一个输入的表达式是NULL。如果第一个输入参数的类型是二进制,输入值有望WKB描述一个多边形或多个多边形。如果第一个输入参数的类型是字符串,输入值将是WKT或者是GeoJSON描述一个多边形或多个多边形。输入多边形或多个多边形的维数可以2 d, 3 dz, 3 dm,或4 d。
错误条件
如果
geographyExpr
的类型是二进制和值是无效的WKB或者不代表一个或多个多边形,多边形函数返回WKB_PARSE_ERROR。如果
geographyExpr
是字符串类型的值是无效的WKT或不代表一个或多个多边形,多边形函数返回WKT_PARSE_ERROR。如果
geographyExpr
是字符串类型的值是无效的GeoJSON或不代表一个或多个多边形,多边形函数返回GEOJSON_PARSE_ERROR。如果
resolutionExpr
小于0
或比15
,该函数返回H3_INVALID_RESOLUTION_VALUE。
例子
——简单例子WKT格式的输入是一个三角形。>选择h3_polyfillash3(“多边形((-122.4194 - 37.7749,-118.2437 - 34.0522,-74.0060 - 40.7128,-122.4194 - 37.7749))”,2)(586146350232502271,586147449744130047,586198577034821631,586152397546455039,586199676546449407,586153497058082815,586142501941805055,586201325813891071]——简单的例子,十六进制WKB格式的输入是一个三角形。>选择h3_polyfillash3(unhex(“0103000000010000000400000050 fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240”),2)(586146350232502271,586147449744130047,586198577034821631,586152397546455039,586199676546449407,586153497058082815,586142501941805055,586201325813891071]——喂空linestring GeoJSON格式(而不是一个多边形或多个多边形)。>选择h3_polyfillash3({“类型”:“LineString”、“坐标”:[]}”,2)(GEOJSON_PARSE_ERROR]错误解析GeoJSON:无效的或不支持的类型“LineString”在位置9——喂一个无效的WKB(无效的字节顺序值)>选择h3_polyfillash3(unhex(“020700000000”),2)(WKB_PARSE_ERROR]错误解析WKB:无效的字节订单2在位置1——给一个无效的WKT多边形(多边形不关闭)>选择h3_polyfillash3(“多边形((-122.4194 - 37.7749,-118.2437 - 34.0522,-74.0060 - 40.7128,-74.0060 - 40.7128))”,2)(WKT_PARSE_ERROR]错误解析WKT:发现非- - - - - -关闭环在位置80年——解决范围。>选择h3_polyfillash3(“多边形((-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,包容