- Categories:
ST_WITHIN¶
Returns true if the first geospatial object is fully contained by the second geospatial object. In other words:
The first GEOGRAPHY object
g1
is fully contained by the second GEOGRAPHY objectg2
.The first GEOMETRY object
g1
is fully contained by the second GEOMETRY objectg2
.
Calling ST_WITHIN(g1, g2)
is equivalent to calling ST_CONTAINS(g2, g1)
.
Although ST_COVEREDBY and ST_WITHIN might seem similar, the two functions have subtle differences. For details on the differences between “covered by” and “within”, see the Dimensionally Extended 9-Intersection Model (DE-9IM) (link removed).
Note
This function does not support using a GeometryCollection or FeatureCollection as input values.
Tip
You can use the search optimization service to improve the performance of queries that call this function. For details, see Search Optimization Service.
- See also:
Syntax¶
ST_WITHIN( <geography_expression_1> , <geography_expression_2> )
ST_WITHIN( <geometry_expression_1> , <geometry_expression_2> )
Arguments¶
geography_expression_1
A GEOGRAPHY object that is not a GeometryCollection or FeatureCollection.
geography_expression_2
A GEOGRAPHY object that is not a GeometryCollection or FeatureCollection.
geometry_expression_1
A GEOMETRY object that is not a GeometryCollection or FeatureCollection.
geometry_expression_2
A GEOMETRY object that is not a GeometryCollection or FeatureCollection.
Returns¶
BOOLEAN.
Examples¶
GEOGRAPHY examples¶
This shows a simple use of the ST_WITHIN function:
create table geospatial_table_01 (g1 GEOGRAPHY, g2 GEOGRAPHY); insert into geospatial_table_01 (g1, g2) values ('POLYGON((0 0, 3 0, 3 3, 0 3, 0 0))', 'POLYGON((1 1, 2 1, 2 2, 1 2, 1 1))');SELECT ST_WITHIN(g1, g2) FROM geospatial_table_01; +-------------------+ | ST_WITHIN(G1, G2) | |-------------------| | False | +-------------------+