LBS は、各場所の緯度と経度の座標を保存し、近くの場所を検索し、地理的場所のインデックスを確立してクエリの効率を向上させます。
mongodb 地理的位置インデックス、2d および 2dsphere、平面と球に対応します。
1. lbs コレクションの保存場所の座標を作成します
use lbs; db.lbs.insert( { loc:{ type: "Point", coordinates: [113.332264, 23.156206] }, name: "广州东站" } ) db.lbs.insert( { loc:{ type: "Point", coordinates: [113.330611, 23.147234] }, name: "林和西" } ) db.lbs.insert( { loc:{ type: "Point", coordinates: [113.328095, 23.165376] }, name: "天平架" } )
座標: 113.323568, 23.146436
近くから 1 キロメートル以内の地点を検索し、近いものから遠いものへ並べ替えます
db.lbs.ensureIndex( { loc: "2dsphere" } )
db.lbs.find( { loc: { $near:{ $geometry:{ type: "Point", coordinates: [113.323568, 23.146436] }, $maxDistance: 1000 } } } )
{ "_id" : ObjectId("556a651996f1ac2add8928fa"), "loc" : { "type" : "Point", "coordinates" : [ 113.330611, 23.147234 ] }, "name" : "林和西" }
上記では、関連するコンテンツを含め、mongodb の地理的位置検索を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。