sql >> Database >  >> NoSQL >> MongoDB

MongoDB-afdrukafstand tussen twee punten

U kunt de $geoNear . gebruiken geaggregeerde pijplijnfase om een ​​afstand vanaf het opgevraagde punt te produceren:

 db.new_stores.aggregate([
    { "$geoNear": {
        "near": {
            "type": "Point",
            "coordinates": [ -81.093699, 32.074673 ]
        }, 
        "maxDistance": 500 * 1609,
        "spherical": true,
        "distanceField": "distance",
        "distanceMultiplier": 0.000621371
    }}
]).pretty()

Hiermee kunt u "distanceField" . specificeren die een ander veld in de uitvoerdocumenten zal produceren met de afstand vanaf het opgevraagde punt. U kunt ook "distanceMultiplier" . gebruiken om elke gewenste conversie op de uitvoerafstand toe te passen (d.w.z. meters naar mijlen, en merk op dat alle GeoJSON-afstanden worden geretourneerd in meters)

Er is ook de geoNear commando met vergelijkbare opties, maar het retourneert natuurlijk geen cursor als uitvoer.



  1. Hoe de vervaldatum van de hash-sleutel in redis in te stellen op basis van het bestaan ​​van de sleutel

  2. Aggregate framework kan geen indexen gebruiken

  3. MongoDB $ne Aggregation Pipeline Operator

  4. MongoDB $gt Aggregation Pipeline Operator