我有一个没有适当地理空间格式的现有mongo数据库。是否可以向现有数据库添加地理空间索引?
有关db
的一些细节集合中的每个文档都包含密钥lat
和long
,但没有指定的loc
参数。
P.S。我是新手w.r.t. MongoDB的。所以我不确定在这个问题中还要添加什么
答案 0 :(得分:1)
您似乎需要the documentation个2d index条款build a 2d index。致query this,发出:
db.<collection>.ensureIndex( { <location field> : "2d" ,
<additional field> : <value> } ,
{ <index-specification options> } )
要combining longitude and latitude into one field,请使用:
db.<collection>.find( { <location field> :
{ $geoWithin :
{ $box|$polygon|$center : <coordinates>
} } } )
如果这不能解决您的问题,请发表评论。
更多的挖掘会产生一个建议{{3}}的页面,换句话说就是这样:
loc = [long, lat];
db.<collection>.ensureIndex( { loc : "2d" } );
如果您需要进一步的帮助,请与我们联系。