ITPub博客

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

YashanDB ST_BOUNDARY函数

国内数据库 作者:崖山数据库系统YashanDB 时间:2025-05-14 09:17:07 0 删除 编辑

ST_BOUNDARY函数用于计算输入的geometry的组合边界,返回值为ST_GEOMETRY类型数据。

该函数根据输入geometry的不同数据类型,返回不同的边界类型:

  • POINT和MULTIPOINT类型的边界为空,返回值为GEOMETRYCOLLECTION EMPTY。
  • LINESTRING和MULTILINESTRING类型的边界为端点,返回值为MULTIPOINT类型,如输入闭环线则返回MULTIPOINT EMPTY。
  • POLYGON和MULTIPOLYGON类型的边界为分割外部和内部的线性环,返回值为LINESTRING类型。

对于LINESTRING和MULTILINESTRING类型的输入,本函数计算时仅计算x、y坐标,z坐标不参与计算,即如输入值的端点x、y坐标相等时,则返回MULTIPOINT EMPTY;输出时间点按照x坐标从负到正的顺序,y坐标从负到正的顺序输出,输出值包含z坐标。

geometry

通用表达式,其值必须为有效的ST_GEOMETRY类型的数据,但不能为GEOMETRY COLLECTION类型。

当输入的参数存在NULL时,函数返回NULL。

示例(单机HEAP表)

--ST_BOUNDARY函数根据给定的GEOMETRY返回一个ST_GEOMETRY数据--输入值为POINT类型SELECT ST_ASTEXT(ST_BOUNDARY(ST_GeomFromText('POINT(2 6 9 5)'))) res FROM DUAL;RES                                                              
---------------------------------------------------------------- GEOMETRYCOLLECTION EMPTY  
--输入值为LINESTRING类型SELECT ST_ASTEXT(ST_BOUNDARY(ST_GeomFromText('LINESTRING(1 1, 0 0, -1 1)')),0) res FROM DUAL;RES                                                              
---------------------------------------------------------------- MULTIPOINT (1 1, -1 1) --输入值为POLYGON类型SELECT ST_AsText(ST_Boundary(ST_GeomFromText('POLYGON((1 1, 0 0, -1 1, 1 1))')),0) res FROM DUAL;RES                                             
---------------------------------------------------------------- LINESTRING (1 1, 0 0, -1 1, 1 1)  --参数包含NULLSELECT ST_ASTEXT(ST_BOUNDARY(ST_GeomFromText(null, 4316))) res FROM DUAL;RES                                                              
----------------------------------------------------------------


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

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

注册时间:2023-04-11

  • 博文量
    722
  • 访问量
    639924