मैं प्रत्येक विभागसंबंधित समूह की सरणी के साथ प्रत्येक समूह के लिए फ़ील्ड का अधिकतम मूल्य कैसे प्राप्त करें?
{"Name": "Sam", "Salary": 90000, "Department": "IT"}
{"Name": "Henry", "Salary": 80000, "Department": "Sales"}
मैं सबसे अधिक वेतन मिल सकता है द्वारा की तरह
{
"_id" : ObjectId("5738cb363bb56eb8f76c2ba8"),
"records" : [
{
"Name" : "Joe",
"Salary" : 70000,
"Department" : "IT"
}
]
},
{
"_id" : ObjectId("5738cb363bb56eb8f76c2ba9"),
"records" : [
{
"Name" : "Henry",
"Salary" : 80000,
"Department" : "Sales"
},
{
"Name" : "Jake",
"Salary" : 40000,
"Department" : "Sales"
}
]
},
{
"_id" : ObjectId("5738cb363bb56eb8f76c2baa"),
"records" : [
{
"Name" : "Sam",
"Salary" : 90000,
"Department" : "IT"
},
{
"Name" : "Tom",
"Salary" : 50000,
"Department" : "Sales"
}
]
}
मैं सबसे अधिक वेतन के साथ परिणाम करना चाहते हैं एक संग्रह है। लेकिन मुझे संबंधित कर्मचारी नाम नहीं मिल सका।
db.HR.aggregate([
{ "$unwind": "$records" },
{ "$group":
{
"_id": "$records.Department",
"max_salary": { "$max": "$records.Salary" }
}
}
])
किसी ने मुझसे मदद कर सकता है?
बड़ा सवाल है, तो आप को जोड़ सकते हैं कि तुम क्या करने की कोशिश की और एक त्रुटि मिल गया है? – inspired
मैं एसक्यूएल में स्वयं से जुड़ने के साथ इसे हल कर सकता हूं। लेकिन मुझे मोंगो के साथ कोई रास्ता नहीं मिल रहा है – dapangmao