h3_distance函数

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

返回两个输入H3细胞的网格距离id。

语法

h3_distance(h3CellId1Expr,h3CellId2Expr)

参数

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

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

返回

网格距离的BIGINT值两个输入H3细胞,预计将有相同的分辨率。

函数返回NULL如果任何一个输入的表达式是NULL。函数部分验证关于输入参数是否有效的H3细胞ID,必要但不充分条件之间的有效的H3 ID,它的价值是0 x08001fffffffffff0 x08ff3b6db6db6db6。函数定义的行为如果任何两个输入细胞ID不是一个有效的ID。

错误条件

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

  • 如果网格距离可能不是计算,函数返回H3_UNDEFINED_GRID_DISTANCE。网格的距离可能是未定义的有下列原因:

    • 两个输入H3细胞不同的分辨率。

    • 两个输入的任何一个H3细胞是一个五边形的细胞。

    • 这两个H3五角细胞细胞分离。

    • 两个H3细胞相距太远。

例子

——例子两个参数是长整型数字代表H3细胞。>选择h3_distance(599686030622195711,599686015589810175);2——例子代表H3细胞的两个参数是十六进制字符串。>选择h3_distance(“85283447 fffffff”,“8528340 ffffffff”)2两个细胞的例子,相距太远。>选择h3_distance(h3_longlatash3(- - - - - -120年,45,13),h3_longlatash3(120年,45,13))(H3_UNDEFINED_GRID_DISTANCE]H3网格距离之间的635723017894513407635869868887430591未定义的——两个细胞具有不同分辨率的例子。>选择h3_distance(h3_longlatash3(120年,45,13),h3_longlatash3(120年,45,12));(H3_UNDEFINED_GRID_DISTANCE]H3网格距离之间的635869868887430591631366269260060159未定义的——第一个细胞ID是五角大楼。>选择h3_distance(590112357393367039,590678880759578623)(H3_UNDEFINED_GRID_DISTANCE]H3网格距离之间的590112357393367039590678880759578623未定义的——距离两个六边形由五角大楼。>选择h3_distance(590112494832320511,590112632271273983)(H3_UNDEFINED_GRID_DISTANCE]H3网格距离之间的590112494832320511590112632271273983未定义的