このバージョンのドキュメントはアーカイブされており、サポートされなくなりました。5.0 配置をアップグレードするには、 MongoDB 6.0 のアップグレード手順 を参照してください。
定義
$minDistance地理空間
$nearまたは$nearSphereクエリの結果を、中心点から指定された 以上の距離にあるドキュメントにフィルタリングします。$nearまたは$nearSphereクエリで中心点がGeoJSON ポイントとして指定される場合は、距離をメートル単位で負でない数として指定します。$nearSphereクエリで中心点がlegacy coordinate pairとして指定される場合は、距離をラジアン 単位で負でない数として指定します。 は、クエリで中心点が GeoJSON$nearポイント として指定されている場合にのみ、 2dsphere インデックスを使用できます 。
例
以下と一緒に使用する $near
重要
緯度と経度の座標を指定する場合は、最初に経度、次に緯度を指定します。
有効な経度の値は、
-180以上、180以下です。有効な緯度の値は
-90以上、90以下です。
2dsphere インデックスのあるコレクション places を考えてみましょう。
次の例では、指定された GeoJSON ポイントから少なくとも 1000 メートル、最大 5000 メートル離れたドキュメントを、近いものから遠いものの順に返します。
db.places.find( { location: { $near : { $geometry: { type: "Point", coordinates: [ -73.9667, 40.78 ] }, $minDistance: 1000, $maxDistance: 5000 } } } )
以下と一緒に使用する $nearSphere
locationフィールドと2dsphereインデックスを持つドキュメントを含むコレクションplacesについて考えます。
次に、次の例では、指定された点から少なくとも1000メートル、最大5000メートル離れたlocationを、最も近いものから最も遠いものの順に返します。
db.places.find( { location: { $nearSphere: { $geometry: { type : "Point", coordinates : [ -73.9667, 40.78 ] }, $minDistance: 1000, $maxDistance: 5000 } } } )
中心点を legacy coordinate pair として指定する例については、次を参照してください $nearSphere