2017-05-11 2 views
0

Mein Problem ist das Folgende, ich weiß nicht, wie man die Position eines Dokuments, das Ganze ist für ein Ranking. Die Dokumente sind wie folgt aufgebaut: Name (Beispiel), Kills (10). Sortiert nach den killsJava MongoDB Treiber Position eines Dokuments für ein Ranking

MongoDB-Treiber Version ist 3.4.2

Bitte helfen Sie mir!

+0

lesen Sie bitte [Wie erstelle ein minimales, vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve) –

Antwort

0

Ich denke, du versuchst so etwas wie deine Sammlung nach Kills zu sortieren und dann den Rang eines Spielers zu bekommen.

So Sie ziemlich viel brauchen, um durch die sortierte FindIterable iterieren, bis Sie den Namen finden, die Sie suchen:

MongoCollection<Document> collection = ...; //your collection 
    int i = 1; 
    for (Document doc : collection.find().sort(Sorts.descending("kills"))) { 
     if (doc.getString("name").equals(/*THE NAME YOU'RE SEARCHING FOR*/)) { 
      //i is the "rank" 
     } 
     i++; 
    } 

Hoffe, dass ich Ihre Frage bekam Recht: P

Verwandte Themen