YashanDB ST_PERIMETER函数

ST_PERIMETER函数用于计算geometry的周长,或者说计算的是区域的周长,对于不能构成区域的几何图形,则返回0。

geometry

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

  • geometry是POLYGON、MULTIPOLYGON或GEOMETRY COLLECTION类型会返回对应的周长,其它的geometry类型会返回0。
  • geometry的空间参考系标识号(SRID)必须在spatial_ref_sys系统表中定义或者为0,否则报错。
  • geometry的空间参考系标识号(SRID)在spatial_ref_sys中对应的srs_type如果是GEOGRAPHY2D或者GEOGRAPHY3D,会切换到大地坐标算法计算,否则会使用投影坐标算法。

本函数遵守如下规则:

  • 当输入的参数存在NULL时,函数返回NULL。
  • 该函数只会计算2D结果,如果输入的是三维,则会忽略Z坐标进行计算。
  • 对于输入的经纬度坐标,如果输入的数值不在有效经纬度范围内,则会转换成有效经纬度进行计算。

示例(单机HEAP表)

SELECT ST_Perimeter(ST_GeomFromText('POLYGON ((-71.17 42.39,-72.17 43.39,-72.17 44.39,-71.17 42.39))', 4326)) res FROM dual;

RES
----------- 
4.855E+005

SELECT ST_Perimeter(ST_GeomFromText('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))', 3385)) res FROM dual;

RES
----------- 
4.0E+001
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值