

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# ST\$1Covers
<a name="ST_Covers-function"></a>

如果第一个输入几何体的 2D 投影被第二个输入几何体的 2D 投影覆盖，则 ST\$1Covers 返回 true。如果几何体 `A` 和几何体 `B` 都是非空的，并且 `B` 中的每个点均为 `A` 中的一个点，则前者覆盖了后者。

ST\$1Covers(`A`, `B`) 与 ST\$1CoveredBy(`B`, `A`) 等效。

## 语法
<a name="ST_Covers-function-syntax"></a>

```
ST_Covers(geom1, geom2)
```

## 参数
<a name="ST_Covers-function-arguments"></a>

 *geom1*   
一个 `GEOMETRY` 数据类型的值，或一个计算结果为 `GEOMETRY` 类型的表达式。

 *geom2*   
一个 `GEOMETRY` 数据类型的值，或一个计算结果为 `GEOMETRY` 类型的表达式。此值将与 *geom1*进行比较以确定它是否覆盖了 *geom1*。

## 返回类型
<a name="ST_Covers-function-return"></a>

`BOOLEAN`

如果 *geom1* 或 *geom2* 为 null，则返回 null。

如果 *geom1* 和 *geom2* 不具有相同的空间参考系统标识符 (SRID) 值，则返回一个错误。

如果 *geom1* 或 *geom2* 为几何体集合，则返回一个错误。

## 示例
<a name="ST_Covers-function-examples"></a>

以下 SQL 检查第一个多边形是否覆盖了第二个多边形。

```
SELECT ST_Covers(ST_GeomFromText('POLYGON((0 2,1 1,0 -1,0 2))'), ST_GeomFromText('POLYGON((-1 3,2 1,0 -3,-1 3))'));
```

```
st_covers
-----------
 false
```