का उपयोग करके कई फ़ील्ड की अलग-अलग गिनती मैं कई क्षेत्रों के अलग-अलग मानों को गिनने की कोशिश कर रहा हूं, एक मोंगोडीबी एकत्रीकरण क्वेरी द्वारा।मोंगोडब एग्रीगेशन
तो यहाँ अपने डेटा है:
{
"car_type": "suv",
"color": "red",
"num_doors": 4
},
{
"car_type": "hatchback",
"color": "blue",
"num_doors": 4
},
{
"car_type": "wagon",
"color": "red",
"num_doors": 4
}
मैं प्रत्येक क्षेत्र की एक अलग गिनती हैं:
distinct_count_car_type=3
distinct_count_color=2
distinct_count_num_doors=1
मैं समूह से अधिक फ़ील्ड करने में सक्षम था और फिर एक अलग गिनती है, लेकिन यह केवल दे सकता है मुझे पहले क्षेत्र पर एक गिनती है। इनमें से सभी नहीं। और यह भी डेटा का एक बड़ा सेट है।
दुर्भाग्य से मैं मोंगोड 3.2 और $ ऑब्जेक्ट का उपयोग कर रहा हूं, मुझे लगता है कि मैनुअल के अनुसार 3.4 में पेश किया गया था। – Deckard
सही। मैं 3.4.4 पर अपग्रेड की अनुशंसा करता हूं। –
इसलिए मैंने अपग्रेड किया और आपके समाधान का प्रयास किया। अब मेरे पास उन गतिशील फ़ील्ड हैं जो मैं एक अलग गिनती करना चाहता हूं वास्तव में एक सरणी में हैं क्योंकि वे किसी अन्य संग्रह से $ लुकअप से हैं। प्रश्न के शीर्ष पर संग्रह $ लुकअप के कारण मेरे परिणामों पर एक सरणी में है। तो जब मैं फ़ील्ड पर $ ऑब्जेक्ट टॉअरे को करने का प्रयास करता हूं तो मुझे "$ ऑब्जेक्ट प्राप्त होता है। ऑर्रे को दस्तावेज़ इनपुट की आवश्यकता होती है, मिली: सरणी"। और मैंने $ array को ऑब्जेक्ट करने की कोशिश की, शायद उस पर $ ऑब्जेक्ट को कॉल करने में सक्षम हो और मुझे "$ arrayToObject को 'कुंजी' और 'v' की ऑब्जेक्ट कुंजियों की आवश्यकता हो। कुंजी की गलत संख्या मिली: 5"। – Deckard