sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB utskriftsavstånd mellan två punkter

Du kan använda $geoNear samlat pipelinesteg för att producera ett avstånd från den frågade punkten:

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

Detta låter dig ange "distanceField" vilket kommer att producera ett annat fält i utdatadokumenten som innehåller avståndet från den frågade punkten. Du kan också använda "distanceMultiplier" att tillämpa eventuell omvandling på utmatningsavståndet efter behov (dvs. meter till miles, och notera att alla GeoJSON-avstånd returneras i meter )

Det finns också geoNear kommando med liknande alternativ, men det returnerar naturligtvis inte en markör som utdata.



  1. Skillnad mellan Redis AOF och Tarantool WAL-logg

  2. Hur ska jag använda Booksleeve med protobuf-net?

  3. Dumpa Mongo Collection till JSON-format

  4. I NodeJS, hur matar man ut resultat från mongodb med olika fältnamn?