📣
TiDB Cloud Premium 开放公测中。为企业级工作负载提供无限扩展、即时弹性伸缩和高级安全保障。此页面由 AI 自动翻译,英文原文请见此处。

ST_BUFFER



返回一个 GEOMETRY,表示与输入几何对象距离小于或等于指定距离的所有点。结果为 MultiPolygon 或 NULL。

语法

ST_BUFFER(<geometry>, <distance>)

参数

参数描述
<geometry>一个 GEOMETRY 表达式。不支持 GeometryCollection。
<distance>缓冲距离。单位与输入几何对象的坐标系一致。

返回类型

Geometry(可为空)。

示例

-- Buffer a point (produces a polygon approximating a circle) SELECT ST_BUFFER(TO_GEOMETRY('POINT(0 0)'), 1) IS NOT NULL; ┌────────┐ │ result │ ├────────┤ │ true │ └────────┘ -- Zero distance on a polygon returns itself as MultiPolygon SELECT ST_ASWKT( ST_BUFFER(TO_GEOMETRY('POLYGON((0 0, 4 0, 4 4, 0 4, 0 0))'), 0) ); ┌─────────────────────────────────────────────────┐ │ result │ ├─────────────────────────────────────────────────┤ │ MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0))) │ └─────────────────────────────────────────────────┘ -- Zero distance on a point returns NULL SELECT ST_ASWKT(ST_BUFFER(TO_GEOMETRY('POINT(0 0)'), 0)); ┌────────┐ │ result │ ├────────┤ │ NULL │ └────────┘ -- SRID is preserved SELECT ST_SRID(ST_BUFFER(ST_GEOMETRYFROMWKT('POINT(0 0)', 4326), 1)); ┌────────┐ │ result │ ├────────┤ │ 4326 │ └────────┘

文档内容是否有帮助?