mongo-空间查询

# 插入数据
db.testgeo.insert({loc:[0 ,10]})
db.testgeo.insert({loc:[1 ,10]})
db.testgeo.insert({loc:[2 ,10]})
db.testgeo.insert({loc:[3 ,10]})
db.testgeo.insert({loc:[4 ,10]})
db.testgeo.insert({loc:[5 ,10]})
db.testgeo.insert({loc:[6 ,10]})
db.testgeo.insert({loc:[7 ,10]})
db.testgeo.insert({loc:[8 ,10]})
db.testgeo.insert({loc:[9 ,10]})
db.testgeo.insert({loc:[11,10]})
db.testgeo.insert({loc:[12,10]})
db.testgeo.insert({loc:[13,10]})
db.testgeo.insert({loc:[14,10]})
db.testgeo.insert({loc:[15,10]})
db.testgeo.insert({loc:[16,10]})
db.testgeo.insert({loc:[17,10]})
db.testgeo.insert({loc:[18,10]})
db.testgeo.insert({loc:[19,10]})
db.testgeo.insert({loc:[20,10]})
db.testgeo.insert({loc:[10, 0]})
db.testgeo.insert({loc:[10,1 ]})
db.testgeo.insert({loc:[10,2 ]})
db.testgeo.insert({loc:[10,3 ]})
db.testgeo.insert({loc:[10,4 ]})
db.testgeo.insert({loc:[10,5 ]})
db.testgeo.insert({loc:[10,6 ]})
db.testgeo.insert({loc:[10,7 ]})
db.testgeo.insert({loc:[10,8 ]})
db.testgeo.insert({loc:[10,9 ]})
db.testgeo.insert({loc:[10,10]})
db.testgeo.insert({loc:[10,11]})
db.testgeo.insert({loc:[10,12]})
db.testgeo.insert({loc:[10,13]})
db.testgeo.insert({loc:[10,14]})
db.testgeo.insert({loc:[10,15]})
db.testgeo.insert({loc:[10,16]})
db.testgeo.insert({loc:[10,17]})
db.testgeo.insert({loc:[10,18]})
db.testgeo.insert({loc:[10,19]})
db.testgeo.insert({loc:[10,20]})
#创建索引
db.testgeo.ensureIndex({loc:'2d'})
#1. 以(10,10)为圆心,由近及远显示所有点
db.testgeo.find({loc:{$near:[10,10]}})
#2. 以(10,10)为圆心,由近及远显示5个点
db.testgeo.find({loc:{$near:[10,10]}}).limit(5)
#3. 以(10,10)为圆心,由近及远显示距离在1以内的所有点
db.testgeo.find({loc:{$near:[10,10],$maxDistance:2}})
posted @ 2012-11-30 16:51  醇酒醉影  阅读(374)  评论(0编辑  收藏  举报