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

MongoDB 'kan ikke finde indeks for $geoNear-forespørgsel'

Få problemer, du har oprettet dine indekser på foo-samlingen i foo-databasen, men forespørger på søjlesamlingen . Du skal være på den rigtige samling.

Når du læser det dokument, du har indsat, skal du tilføje et "2dsphere"-indeks for at understøtte geoJson-objekterne. Dette indeks skal være på "punkt"-elementet i dine dokumenter, så prøv

db.bar.createIndex({point:"2dsphere"});

Du kan derefter forespørge på følgende måde ved at angive en geoJson-obj for forespørgslen:

db.bar.find(
   { point :
       { $near :
          {
            $geometry : {
               type : "Point" ,
               coordinates : [-84.27326978424058, 30.443902444762696] },
            $maxDistance : 1
          }
       }
    }
)


  1. Mislykket global initialisering:BadValue Ugyldig eller ingen bruger-lokalitet angivet. Sørg for, at miljøvariablerne LANG og/eller LC_* er indstillet korrekt

  2. Java MongoDB Objektversionering

  3. En oversigt over MongoDB Atlas:Anden del

  4. Mongoose, CastError:Cast to Array mislykkedes for værdi ved forsøg på at gemme en model, der indeholder en model