跳到主要内容

ST_COVERS

引入或更新于:v1.2.911

如果第二个 GEOMETRY 对象中没有任何点位于第一个 GEOMETRY 对象之外,则返回 TRUE。

另请参阅:ST_COVEREDBY

语法​

ST_COVERS(<geometry1>, <geometry2>)

参数​

参数描述
<geometry1>GEOMETRY 表达式(覆盖对象)。
<geometry2>GEOMETRY 表达式(被测试对象)。

返回类型​

Boolean。

示例​

-- 多边形覆盖其内部的较小多边形
SELECT ST_COVERS(
TO_GEOMETRY('POLYGON((-2 0, 0 2, 2 0, -2 0))'),
TO_GEOMETRY('POLYGON((-1 0, 0 1, 1 0, -1 0))')
);

┌────────┐
│ result │
├────────┤
│ true │
└────────┘

-- 多边形覆盖其边界上的线段
SELECT ST_COVERS(
TO_GEOMETRY('POLYGON((-2 0, 0 2, 2 0, -2 0))'),
TO_GEOMETRY('LINESTRING(-1 1, 0 2, 1 1)')
);

┌────────┐
│ result │
├────────┤
│ true │
└────────┘

-- 多边形外部的点不被覆盖
SELECT ST_COVERS(
TO_GEOMETRY('POLYGON((0 0, 3 0, 3 3, 0 3, 0 0))'),
TO_GEOMETRY('POINT(5 5)')
);

┌────────┐
│ result │
├────────┤
│ false │
└────────┘
欢迎体验 Databend Cloud

基于 Rust + 对象存储构建的新一代多模态数仓,一个平台即可进行 BI、向量、全文检索及地理空间分析。

支持标准 SQL,自动弹性伸缩,助您快速构建现代化数据平台。

注册即领 ¥200 代金券。

注册体验