ITPub博客

首页 > 数据库 > 国内数据库 > YashanDB ST_GEOMETRICMEDIAN函数

YashanDB ST_GEOMETRICMEDIAN函数

原创 国内数据库 作者:崖山数据库系统YashanDB 时间:2025-05-22 18:23:55 0 删除 编辑

ST_GEOMETRICMEDIAN函数的功能是使用Weiszfeld算法计算MULTIPOINT数据的几何中位数。最终会返回一个POINT数据,该POINT到MULTIPOINT的所有POINT的距离之和是最小的。

geometry

通用表达式,其值必须为有效的ST_GEOMETRY类型的数据,遵循如下规则:

  • 当该参数为NULL时,函数返回NULL。
  • 输出的POINT数据维度由输入的MULTIPOINT数据的最大维度决定,且不会超过三维。
  • 输入geometry的是POINT类型时,则会返回该POINT,输入的是MULTIPOINT EMPTY时则返回POINT EMPTY,输入其他类型则报错。

tolerance

tolerance表示容差,其值为DOUBLE类型。Weiszfeld算法会不断迭代进行计算,直到连续迭代之间的距离变化小于给定的容差(tolerance),该参数遵循如下规则:

  • 该参数可以省略,如省略或输入NULL,则会根据输入的geometry的外包框计算一个tolerance。
  • 支持能够隐式转换成DOUBLE的数据类型。
  • tolerance仅支持为非负数,否则报错。

maxIter

maxIter表示迭代最大次数,其值为INT类型,遵循如下规则:

  • 该参数可以省略,默认值为10000。
  • 支持能够隐式转换成INT的数据类型。
  • maxIter只能是正整数,输入的是负数或者是Null则报错。
  • 当failIfNotConverged参数为TRUE时,如进行了maxIter次迭代仍未满足第二个条件,则会报错。
  • 当failIfNotConverged参数为FALSE时,则即使进行了maxIter次迭代仍未满足第二个条件,也不会报错。

failIfNotConverged

failIfNotConverged表示迭代计算次数超过maxIter是否报错,其值为BOOLEAN类型,遵循如下规则:

  • 该参数可以省略,默认值为FALSE,输入NULL同样视作FALSE。
  • 支持能够隐式转换成BOOLEAN的数据类型。

示例(单机HEAP表)

--ST_GEOMFROMTEXT函数会根据给定的WKT和SRID返回一个ST_GEOMETRY数据SELECT ST_AsText(ST_GeometricMedian(ST_GeomFromText('MULTIPOINT(1 1, 2 2, 3 3)')), 0) res FROM DUAL;RES                                             
---------------------------------------------------------------- POINT (2 2)                                                     SELECT ST_AsText(ST_GeometricMedian(ST_GeomFromText('MULTIPOINT(1 1, 2 2, 3 3 3)')), 0) res FROM DUAL;RES                                            
---------------------------------------------------------------- POINT Z (2 2 0)                                                 SELECT ST_AsText(ST_GeometricMedian(ST_GeomFromText('MULTIPOINT(1 1, 2 2, 3 3 3)'), NULL, 0, TRUE), 0) res FROM DUAL;YAS-07202 plugin execution error, Median failed to converge within 1e-08 after 0 iterations.


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3085438/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统,融入原创理论,支持单机/主备、共享集群、分布式等多种部署方式,覆盖OLTP/HTAP/OLAP交易和分析混合负载场景,为客户提供一站式的企业级融合数据管理解决方案。

注册时间:2023-04-11

  • 博文量
    722
  • 访问量
    639807