ST_Covers returns true if the 2D projection of the first input geometry covers the 2D projection of the second input geometry.
Geometry A
covers geometry B
if both are nonempty and every point
in B
is a point in A
.
ST_Covers(A
, B
) is equivalent to ST_CoveredBy(B
, A
).
Syntax
ST_Covers(geom1, geom2)
Arguments
- geom1
-
A value of data type
GEOMETRY
or an expression that evaluates to aGEOMETRY
type. - geom2
-
A value of data type
GEOMETRY
or an expression that evaluates to aGEOMETRY
type. This value is compared with geom1 to determine if it covers geom1.
Return type
BOOLEAN
If geom1 or geom2 is null, then null is returned.
If geom1 and geom2 don't have the same value for the spatial reference system identifier (SRID), then an error is returned.
If geom1 or geom2 is a geometry collection, then an error is returned.
Examples
The following SQL checks if the first polygon covers the second polygon.
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