ST_CoveredBy — Tests if no point in A is outside B
boolean ST_CoveredBy(
geometry
geomA, geometry
geomB)
;
boolean ST_CoveredBy(
geography
geogA, geography
geogB)
;
Returns true
if no point in Geometry/Geography A lies outside
Geometry/Geography B.
Equivalently, tests if every point of geometry A is inside
(i.e. intersects the interior or boundary of) geometry B.
This function automatically includes a bounding box comparison
that makes use of any spatial indexes that are available on the geometries.
To avoid index use, use the function |
Enhanced: 3.0.0 enabled support for |
Do not use this function with invalid geometries. You will get unexpected results. |
Performed by the GEOS module
Availability: 1.2.2
NOTE: this is the "allowable" version that returns a boolean, not an integer.
Not an OGC standard, but Oracle has it too.
--a circle coveredby a circle SELECT ST_CoveredBy(smallc,smallc) As smallinsmall, ST_CoveredBy(smallc, bigc) As smallcoveredbybig, ST_CoveredBy(ST_ExteriorRing(bigc), bigc) As exteriorcoveredbybig, ST_Within(ST_ExteriorRing(bigc),bigc) As exeriorwithinbig FROM (SELECT ST_Buffer(ST_GeomFromText('POINT(1 2)'), 10) As smallc, ST_Buffer(ST_GeomFromText('POINT(1 2)'), 20) As bigc) As foo; --Result smallinsmall | smallcoveredbybig | exteriorcoveredbybig | exeriorwithinbig --------------+-------------------+----------------------+------------------ t | t | t | f (1 row)