MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Mongodb wyszukaj zapytanie z $blisko i współrzędnymi nie działa

Wygląda na to, że musisz użyć formatu GeoJSON, jeśli twoje dane są również w formacie GeoJSON, tak jak twoje. Jeśli używasz:

db.collectionname.find({
    "location": {
        $near: {
            $geometry:
                { type: "Point", coordinates: [50.0, -0.1330] }, $maxDistance: 500
        }
    }
})

powinno działać. Mógłbym powtórzyć twój błąd przy użyciu formatu przechowywania GeoJSON dla tego pola, ale to, co dokumentacja nazywa starszymi punktami w wyrażeniu zapytania. Myślę, że dokumenty są nieco niejasne, ponieważ sugerują, że można używać współrzędnych GeoJSON i starszych z indeksem 2dsphere 2dsfera

Używam 2.4.10, co jest warte, ponieważ w wydaniu 2.4 wprowadzono kilka dużych zmian przestrzennych.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. jak zaktualizować pole liczbowe za pomocą innego pola liczbowego w MongoDB

  2. Zmienne środowiskowe mongoDB OpenShift Python nie są ustawione / nie można się połączyć

  3. 8 sposobów na uzyskanie dnia z randki w MongoDB

  4. Zapytanie geoprzestrzenne MongoDB z $not

  5. Nie można połączyć się z MongoLab błąd uwierzytelniania