写点什么

YashanDB ST_AREA 函数

作者:YashanDB
  • 2025-05-08
    广东
  • 本文字数:504 字

    阅读完需:约 2 分钟

ST_AREA 函数用于计算 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_Area(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.575E+009
SELECT ST_Area(ST_GeomFromText('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))', 3385)) res FROM dual;
RES----------- 1.0E+002
复制代码


用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
YashanDB ST_AREA函数_YashanDB_InfoQ写作社区