MongoDB unterstützt GeoJSON-Objekte, um geografische Koordinaten und Geodatenabfragen zu verwalten. Wenn Sie Geodatenabfragen in MongoDB ausführen möchten, können Sie folgende Schritte ausführen:
1. Erstellen Sie einen Geospatial-Index: Dieser Index wird auf einem GeoJSON-Feld oder einem Koordinatenfeld des Dokuments erstellt.
Hier ist ein Beispiel, wie Sie einen Geospatial Index auf einem Koordinatenfeld erstellen:
```mongodb
db.collection.createIndex({
```
Im obigen Beispiel sollten Sie `
2. Verwenden Sie die MongoDB-Geodatenabfrageoperatoren: Nachdem der Index erstellt wurde, können Sie verschiedene Arten von Geodatenabfragen durchführen. Hier sind einige Beispiele:
- `$geoWithin`: Wählt Dokumente aus, bei denen das GeoJSON-Objekt innerhalb eines bestimmten Polygon, Multi-Polygon oder Kreises liegt.
- `$geoIntersects`: Wählt Dokumente aus, bei denen das GeoJSON-Objekt einen Schnittpunkt mit einem bestimmten GeoJSON-Objekt hat.
- `$near`: Wählt Dokumente aus und ordnet sie nach ihrer Entfernung zu einem bestimmten Punkt in aufsteigender Reihenfolge.
- `$nearSphere`: Wählt Dokumente aus und ordnet sie nach ihrer Entfernung zu einem bestimmten Punkt auf einer Kugel.
3. Führen Sie die Geodatenabfrage aus: Im folgenden Beispiel wird gezeigt, wie Sie Dokumente abfragen können, die sich in der Nähe eines bestimmten Punktes befinden:
```mongodb
db.collection.find({
}})
```
Ersetzen Sie `
Beachten Sie, dass `$maxDistance` und `$minDistance` optional sind und Sie diese optionen weglassen können, wenn Sie keine Entfernungsgrenzen setzen möchten.
Bitte beachten Sie auch, dass der Breitengrad und der Längengrad des GeoJSON-Punktes in Grad angegeben werden müssen, nicht in Radianten.