MongoDB कलेक्शन से रिकॉर्ड्स प्राप्त करते समय, आप sort() मेथड का उपयोग करके परिणाम में रिकॉर्ड्स को सॉर्ट कर सकते हैं।
सिंटैक्स
db.COLLECTION_NAME.find().sort({KEY:1})
Java MongoDB लाइब्रेरी उसी नाम का एक मेथड प्रदान करती है, रिकॉर्ड्स की संख्या सीमित करने के लिए इस मेथड को इनवोक करें (find() मेथड के परिणाम पर) सॉर्ट के प्रकार (आरोही या अवरोही) और उस फ़ील्ड नाम को पास करके जिसके आधार पर आप रिकॉर्ड्स को सॉर्ट करना चाहते हैं -
sort(Sorts.ascending("age"));
उदाहरण
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.Sorts;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.bson.Document;
import com.mongodb.MongoClient;
public class SortingRecords {
public static void main(String args[]) {
// MongoDB क्लाइंट बनाना
MongoClient mongo = new MongoClient("localhost", 27017);
// डेटाबेस से कनेक्ट करना
MongoDatabase database = mongo.getDatabase("myDatabase");
// कलेक्शन ऑब्जेक्ट बनाना
MongoCollection<Document> collection = database.getCollection("students");
Document document1 = new Document("name", "Ram").append("age", 26).append("city", "Hyderabad");
Document document2 = new Document("name", "Robert").append("age", 27).append("city", "Vishakhapatnam");
Document document3 = new Document("name", "Rhim").append("age", 30).append("city", "Delhi");
Document document4 = new Document("name", "Radha").append("age", 28).append("city", "Mumbai");
Document document5 = new Document("name", "Ramani").append("age", 45).append("city", "Pune");
// बनाए गए डॉक्यूमेंट्स इन्सर्ट करना
List<Document> list = new ArrayList<Document>();
list.add(document1);
list.add(document2);
list.add(document3);
list.add(document4);
list.add(document5);
collection.insertMany(list);
System.out.println("डॉक्यूमेंट्स इन्सर्ट हो गए");
// कलेक्शन ऑब्जेक्ट प्राप्त करना
collection = database.getCollection("students");
// सॉर्ट के साथ डॉक्यूमेंट्स प्राप्त करना
FindIterable<Document> iterDoc = collection.find().sort(Sorts.ascending("age"));
Iterator it = iterDoc.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
आउटपुट
डॉक्यूमेंट्स इन्सर्ट हो गए
Document{{_id=5e88843d5c851b345fce2a33, name=Ram, age=26, city=Hyderabad}}
Document{{_id=5e88843d5c851b345fce2a34, name=Robert, age=27, city=Vishakhapatnam}}
Document{{_id=5e88843d5c851b345fce2a36, name=Radha, age=28, city=Mumbai}}
Document{{_id=5e88843d5c851b345fce2a35, name=Rhim, age=30, city=Delhi}}
Document{{_id=5e88843d5c851b345fce2a37, name=Ramani, age=45, city=Pune}}