उपयोग एकत्रीकरण और name
count > 1
साथ मिलती है:
db.collection.aggregate(
{"$group" : { "_id": "$name", "count": { "$sum": 1 } } },
{"$match": {"_id" :{ "$ne" : null } , "count" : {"$gt": 1} } },
{"$project": {"name" : "$_id", "_id" : 0} }
)
सबसे परिणामों को क्रमित करना कम से कम डुप्लिकेट es:
db.collection.aggregate(
{"$group" : { "_id": "$name", "count": { "$sum": 1 } } },
{"$match": {"_id" :{ "$ne" : null } , "count" : {"$gt": 1} } },
{"$sort": {"count" : -1} },
{"$project": {"name" : "$_id", "_id" : 0} }
)
"नाम" की तुलना में एक और स्तंभ नाम के साथ प्रयोग करने के लिए, परिवर्तन "$ नाम" से "$ स्तंभ"
'" $ match ": {" _id ": {" $ ne ": null}' - यहां अनावश्यक है, क्योंकि कथन के दूसरे भाग के परिणामस्वरूप फ़िल्टरिंग पर्याप्त होगी। इसलिए केवल 'गिनती> 1' वाले समूह की जांच करनी होगी। – BatScream
Tks @BatScream। {"$ ne": null} अगर 'नाम' शून्य है या अस्तित्व में है तो बस वहां है। एकत्रीकरण भी शून्य की गणना करेगा। – anhlc
आपका स्वागत है। लेकिन फिर '_id' फ़ील्ड की जांच क्यों करें। यह हमेशा 'समूह' संचालन के बाद शून्य नहीं होने की गारंटी देता है। – BatScream