如何使用 DocumentDB 集合中的纬度和经度查找最近的点?
How to find nearest points using latitude and longitude from a DocumentDB collection?
我正在使用 Microsoft 的 DocumentDB 来存储英国成百上千个地理位置的位置。数据库集合中的文档如下所示。
{
"CommonName": "Cassell Road",
"CommonNameLang": "en",
"Street": "Downend Road",
"StreetLang": "en",
"Indicator": "SW-bound",
"IndicatorLang": "en",
"Bearing": "SW",
"LocalityName": "Fishponds",
"ParentLocalityName": "Bristol",
"Easting": 364208,
"Northing": 176288,
"Longitude": -2.5168477762,
"Latitude": 51.4844052488,
},
我可以根据用户的纬度和经度使用什么类型的 DocumentDB 查询来从集合中找到最近的点?
谢谢
您需要像 ST_NEAR 或 ST_DISTANCE 这样的地理空间函数。此功能当前不可用 - 您可以查看该功能的状态here。
短期内,尤其是当文档少于 1000 个时,您可以使用现有的地理空间库,例如,System.Spatial and perform processing client-side. Alternatively, you can use a JavaScript library like GeoJSON Utils 在存储过程中执行此操作。
我正在使用 Microsoft 的 DocumentDB 来存储英国成百上千个地理位置的位置。数据库集合中的文档如下所示。
{
"CommonName": "Cassell Road",
"CommonNameLang": "en",
"Street": "Downend Road",
"StreetLang": "en",
"Indicator": "SW-bound",
"IndicatorLang": "en",
"Bearing": "SW",
"LocalityName": "Fishponds",
"ParentLocalityName": "Bristol",
"Easting": 364208,
"Northing": 176288,
"Longitude": -2.5168477762,
"Latitude": 51.4844052488,
},
我可以根据用户的纬度和经度使用什么类型的 DocumentDB 查询来从集合中找到最近的点?
谢谢
您需要像 ST_NEAR 或 ST_DISTANCE 这样的地理空间函数。此功能当前不可用 - 您可以查看该功能的状态here。
短期内,尤其是当文档少于 1000 个时,您可以使用现有的地理空间库,例如,System.Spatial and perform processing client-side. Alternatively, you can use a JavaScript library like GeoJSON Utils 在存储过程中执行此操作。