MongoDB 2.6
创建测试数据:db.mapinfo.insert({'address' : '南京 禄口国际机场','loc' : { 'type': 'Point', 'coordinates': [118.783799,31.979234]}}) db.mapinfo.insert({'address' : '南京 浦口公园','loc' : { 'type': 'Point', 'coordinates': [118.639523,32.070078]}}) db.mapinfo.insert({'address' : '南京 火车站','loc' : { 'type': 'Point', 'coordinates': [118.803032,32.09248]}}) db.mapinfo.insert({'address' : '南京 新街口','loc' : { 'type': 'Point', 'coordinates': [118.790611,32.047616]}}) db.mapinfo.insert({'address' : '南京 张府园','loc' : { 'type': 'Point', 'coordinates': [118.790427,32.03722]}}) db.mapinfo.insert({'address' : '南京 三山街','loc' : { 'type': 'Point', 'coordinates': [118.788135,32.029064]}}) db.mapinfo.insert({'address' : '南京 中华门','loc' : { 'type': 'Point', 'coordinates': [118.781161,32.013023]}}) db.mapinfo.insert({'address' : '南京 安德门','loc' : { 'type': 'Point', 'coordinates': [118.768964,31.99646]}})
创建地理索引 (2d和2dsphere,对应平面和球面。) db.mapinfo.ensureIndex( { loc : '2dsphere' } )
查看地里索引是否创建成功:db.mapinfo.reIndex();删除索引方法:db.mapinfo.dropIndex('name_1');
检索规定半径以内数据(单位为米)db.mapinfo.find({ 'loc' : { '$near' : { '$geometry' : { 'type' : 'Point', 'coordinates' : [118.783799, 31.979234] }, '$maxDistance' : 5000 } } }).limit(50);