h3_kringdistances函数

适用于:检查标记是的砖的SQL检查标记是的砖运行时11.2及以上

返回所有H3细胞内(表示为长整数或字符串)网格的距离k从原点H3细胞,连同他们的距离原点H3细胞。

语法

h3_kringdistances(h3CellIdExpr,kExpr)

参数

  • h3CellIdExpr:一个长整型数字表达式,或十六进制字符串表达式代表一个H3细胞ID。

  • kExpr:一个整数表达式代表网格距离。kExpr必须是非负数。

返回

数组与两个字段命名结构,命名cellid距离分别在第一个字段的结构是一个H3细胞ID(表示为一个长整数或字符串)和第二个字段的结构是其距离原点H3细胞(表示为一个整数)。H3细胞的类型id的输出是一样的类型h3CellIdExpr

返回数组中的元素排序对他们距离原点H3细胞。相对应的元素返回数组中相同的距离可能会以任何顺序返回。函数返回NULL如果任何一个输入的表达式是NULL。函数部分验证关于输入参数是否有效的H3细胞ID,必要但不充分条件之间的有效的H3 ID,它的价值是0 x08001fffffffffff0 x08ff3b6db6db6db6。函数定义的行为如果输入细胞ID不是一个有效的细胞ID。如果网格距离的值是零,返回的数组包含一个值等于输入H3细胞ID。

错误条件

  • 如果h3CellIdExpr是一个字符串,不能转换为长整型数字或对应于一个长整型数字值小于0 x08001fffffffffff或比0 x08ff3b6db6db6db6,该函数返回H3_INVALID_CELL_ID

  • 如果kExpr是负的,函数返回H3_INVALID_GRID_DISTANCE_VALUE

例子

——简单的例子,第一个参数是一个长整型数字。>选择h3_kringdistances (599686042433355775 1) [{“cellid”: 599686042433355775,“距离”:0},{“cellid”: 599686030622195711,“距离”:1},{“cellid”: 599686044580839423,“距离”:1},{“cellid”: 599686038138388479,“距离”:1},{“cellid”: 599686043507097599,“距离”:1},{“cellid”: 599686015589810175,“距离”:1},{“cellid”: 599686014516068351,“距离”:1}]——简单的例子,第一个参数是一个字符串。>选择h3_kringdistances (' 85283473 fffffff ', 1) [{“cellid”:“85283473 fffffff”,“距离”:0},{“cellid”:“85283447 fffffff”,“距离”:1},{“cellid”:“8528347 bfffffff”,“距离”:1},{“cellid”:“85283463 fffffff”,“距离”:1},{“cellid”:“85283477 fffffff”,“距离”:1},{“cellid”:“8528340 ffffffff”,“距离”:1},{“cellid”:“8528340 bfffffff”,“距离”:1}]——首先输入一个无效的H3细胞ID。>选择h3_kringdistances (0,0) [H3_INVALID_CELL_ID] 0不是有效的H3细胞ID——第二次输入是一个无效的网格距离值。>选择h3_kringdistances (' 85283473 fffffff ', 1) [H3_INVALID_GRID_DISTANCE_VALUE] H3网格距离1必须是非负数