MongoDB Sort Record Example | MongoDB sort() In Hindi


किसी collection से documents को fetch करते समय आपने देखा ही होगा कि by default documents को order वही होता जिस order में आपने insert किये थे। और कई जगह ऐसे need आती है कि हमें किसी particular field के according records को fetch करना होता है।

और इस topic में हम documents को order के according fetch करना सीखेंगे।

MongoDB sort() In Hindi

MongoDB में sorting के लिए sort() method का use किया जाता है। यह एक तरह से SQL ORDER BY की तरह work करता है।

sort() method MongoDB में data को sort करने के लिए use किया जाता है। इस method से आप MongoDB collection में stored documents को specified field के according ascending (A to Z) ya descending (Z to A) order में sort कर सकते हैं।

MongoDB sort() Syntax
db.collectionName.find().sort({ fieldname: 1 }) // Ascending order
db.collectionName.find().sort({ fieldname: -1 }) // Descending order

Syntax में collectionName एक collection का नाम है और fieldname आपके documents में sort करने करने के लिए use किया गया field का नाम है। 1 ascending order को represent करता है और -1 descending order को।

MongoDB sort() Example

Suppose आपके पास एक "employees" collection है जिसमे employees की details stored है ।

अब अगर आपको documents को age के bases पर descending order (घटते क्रम) में sort करना है तो कुछ इस तरह से करेंगे -

db.employees.find().sort({ "age" : -1 }) 

ऊपर दी गयी MongoDB query की SQL equivalent query कुछ इस तरह से होगी -

SELECT * FROM employees ORDER BY age DESC;

MySQL sort() with Condition

हालाँकि आप चाहे तो find() Method में need के according कोई condition भी pass कर सकते हैं।

जैसे नीचे दिए गए example में salary को ascending order में active employee fetch किये गए है।

db.employees.find({"status" : "active"}).sort({ "salary" : 1 }) 

SQL equivalent query

SELECT * FROM employees WHERE status="active" ORDER BY salary ASC;

इसी तरह से आप advance conditions भी apply करके documents को fetch कर सकते हैं।

MongoDB $sort In aggregate()

हालाँकि aggregate() में भी records को fetch करने के लिए $sort stage का use किया जाता है।

Suppose आपको students collection से create_date के basis पर descending order में records fetch करने हैं तो query कुछ इस तरह से होगी।

db.students.aggregate([
   { $sort : { created_date : -1 } }
]);

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook