sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB print afstand mellem to punkter

Du kan bruge $geoNear aggregeret rørledningstrin for at producere en afstand fra det forespurgte punkt:

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

Dette giver dig mulighed for at angive "distanceField" hvilket vil producere endnu et felt i outputdokumenterne, der indeholder afstanden fra det forespurgte punkt. Du kan også bruge "distanceMultiplier" at anvende enhver konvertering til outputafstanden efter behov (dvs. meter til miles, og bemærke, at alle GeoJSON-afstande returneres i meter )

Der er også geoNear kommando med lignende muligheder, men den returnerer selvfølgelig ikke en markør som output.



  1. Mongo-id'er fører til skræmmende URL'er

  2. Redis, Node.js og Socket.io:Cross-server-godkendelse og node.js-forståelse

  3. Hvordan pipelines i node.js til redis?

  4. Gem billeder i en MongoDB-database