Mongodb: एकाधिक फ़ील्ड के आधार पर कैसे क्रमबद्ध करें


आप MongoDB में दस्तावेज़ों को एकाधिक फ़ील्ड के आधार पर क्रमबद्ध करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 db.myCollection.find().sort( { " field1 ": 1, " field2 ": -1 } )

यह विशेष कोड myCollection नामक संग्रह में दस्तावेज़ों को पहले फ़ील्ड 1 आरोही क्रम में, फिर फ़ील्ड 2 अवरोही क्रम में क्रमबद्ध करता है।

निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित दस्तावेज़ों वाली संग्रह टीम के साथ इस सिंटैक्स का उपयोग कैसे करें:

 db.teams.insertOne({team: " Mavs ", points: 30, rebounds: 8})
db.teams.insertOne({team: " Spurs ", points: 30, rebounds: 12})
db.teams.insertOne({team: " Rockets ", points: 20, rebounds: 7})
db.teams.insertOne({team: " Warriors ", points: 25, rebounds: 5})
db.teams.insertOne({team: " Cavs ", points: 25, rebounds: 9})

उदाहरण 1: MongoDB में एकाधिक फ़ील्ड के अनुसार क्रमबद्ध करें (आरोही)

हम टीम संग्रह में दस्तावेज़ों को पहले “अंक” बढ़ाकर और फिर “बाउंस” बढ़ाकर क्रमबद्ध करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

 db.teams.find().sort( { " points ": 1, " rebounds ": 1 } )

यह क्वेरी निम्नलिखित परिणाम लौटाती है:

 { _id: ObjectId("61f952c167f1c64a1afb203b"),
  team: 'Rockets',
  points: 20,
  rebounds: 7 }
{ _id: ObjectId("61f952c167f1c64a1afb203c"),
  team: 'Warriors',
  points: 25,
  rebounds: 5 }
{ _id: ObjectId("61f952c167f1c64a1afb203d"),
  team: 'Cavs',
  points: 25,
  rebounds: 9 }
{ _id: ObjectId("61f952c167f1c64a1afb2039"),
  team: 'Mavs',
  points: 30,
  rebounds: 8 }
{ _id: ObjectId("61f952c167f1c64a1afb203a"),
  team: 'Spurs',
  points: 30,
  rebounds: 12 }

ध्यान दें कि दस्तावेज़ों को “पॉइंट्स” फ़ील्ड को बढ़ाकर (सबसे छोटे से सबसे बड़े तक) फिर “रिबाउंड्स” फ़ील्ड को बढ़ाकर (सबसे छोटे से सबसे बड़े तक) क्रमबद्ध किया जाता है।

उदाहरण 2: MongoDB में एकाधिक फ़ील्ड के आधार पर क्रमबद्ध करें (अवरोही)

हम टीम संग्रह में दस्तावेज़ों को पहले “अंक” घटाकर और फिर “बाउंस” घटाकर क्रमबद्ध करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

 db.teams.find().sort( { " points ": -1, " rebounds ": -1 } )

यह क्वेरी निम्नलिखित परिणाम लौटाती है:

 { _id: ObjectId("61f952c167f1c64a1afb203a"),
  team: 'Spurs',
  points: 30,
  rebounds: 12 }
{ _id: ObjectId("61f952c167f1c64a1afb2039"),
  team: 'Mavs',
  points: 30,
  rebounds: 8 }
{ _id: ObjectId("61f952c167f1c64a1afb203d"),
  team: 'Cavs',
  points: 25,
  rebounds: 9 }
{ _id: ObjectId("61f952c167f1c64a1afb203c"),
  team: 'Warriors',
  points: 25,
  rebounds: 5 }
{ _id: ObjectId("61f952c167f1c64a1afb203b"),
  team: 'Rockets',
  points: 20,
  rebounds: 7 }

ध्यान दें कि दस्तावेज़ों को “पॉइंट्स” फ़ील्ड को घटाकर (सबसे बड़े से सबसे छोटे तक) और फिर “रिबाउंड्स” फ़ील्ड को घटाकर (सबसे बड़े से सबसे छोटे तक) क्रमबद्ध किया जाता है।

नोट : आप सॉर्ट फ़ंक्शन के लिए संपूर्ण दस्तावेज़ यहां पा सकते हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि MongoDB में अन्य सामान्य ऑपरेशन कैसे करें:

MongoDB: दिनांक के अनुसार कैसे क्रमबद्ध करें
MongoDB: कैसे समूहबद्ध करें और गिनें
MongoDB: एकाधिक फ़ील्ड के आधार पर समूह कैसे बनाएं

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *