ST_WITHIN (Azure Cosmos DB)

适用于:SQL API

返回一个布尔表达式,指示在第一个参数中指定的 GeoJSON 对象(Point、Polygon、MultiPolygon 或 LineString)是否位于第二个参数中的 GeoJSON(Point、Polygon、MultiPolygon 或 LineString)内。

语法

ST_WITHIN (<spatial_expr>, <spatial_expr>)  

参数

spatial_expr
是 GeoJSON 点、多边形或 LineString 对象表达式。

返回类型

返回一个布尔值。

示例

以下示例演示了如何使用 ST_WITHIN 查找某个多边形内的所有家族文档。

SELECT f.id
FROM Families f
WHERE ST_WITHIN(f.location, {  
    'type':'Polygon',
    'coordinates': [[[31.8, -5], [32, -5], [32, -4.7], [31.8, -4.7], [31.8, -5]]]  
})  

下面是结果集。

[{ "id": "WakefieldFamily" }]  

备注

此系统函数将从地理空间索引中受益,但包含聚合的查询除外。

注意

GeoJSON 规范要求多边形内的点按逆时针顺序指定。 以顺时针顺序指定的多边形表示其中的区域倒转。

后续步骤