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

$near zapytanie przez Javę

Najpierw będziesz potrzebować maxDistance i punktu odniesienia do obliczenia w pobliżu dokumentów. Poniższy kod pokazuje, jak zbudować DBObject do wykonywania zapytań w pobliżu dokumentów.

double[] coords = new double[2];
long distance = 100;

DBObject query = BasicDBObjectBuilder.start()
    .push("location")
        .add("$maxDistance", distance)
        .push("$near")
            .push("$geometry")
                .add("type", "Point")
                .add("coordinates", coords)
    .get();

Spowoduje to, że json:

{
    "location": {
        "$maxDistance": 100,
        "$near": {
            "$geometry": {
                "type": "Point",
                "coordinates": [
                    0,
                    0
                ]
            }
        }
    }
}

Jeśli używasz mongodb 2.2, powyższy kod nie zadziała. Muszę użyć następujących:

double[] coords = new double[2];
long distance = 100;

DBObject query = BasicDBObjectBuilder.start()
    .push("location")
        .add("$maxDistance", distance)
        .add("$near", coords)
    .get();

Json będzie:

{
    "location" : {
        "$maxDistance" : 100,
        "$near" : [
            0,
            0
        ]
    }
}

Więcej informacji na temat zapytań w pobliżu można znaleźć tutaj:

http://docs.mongodb.org/manual/reference/operator/near/




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Konfiguracja projektu z Django 1.10, mongodb i Python 3.4.3

  2. Uzyskaj wartość w referencji wyszukiwania za pomocą MongoDB i Golang

  3. Jak skonfigurować sterownik MongoDB Java MongoOptions do użytku produkcyjnego?

  4. Wewnętrzna tablica sortowania Mongodb

  5. Mongodb/Mongoid - co oznacza {:multi => true}