मेरे पास कई फ़ील्ड वाले दस्तावेज़ों के मोंगोडीबी संग्रह हैं। कॉलम/फ़ील्ड में से केवल एक संख्यात्मक होना चाहिए, लेकिन इनमें से कुछ फ़ील्ड में गैर-संख्यात्मक (दूषित) डेटा स्ट्रिंग मानों के रूप में होता है। दूषित, गैर-संख्यात्मक डेटा को छोड़कर, मुझे इस कॉलम का उच्चतम संख्यात्मक मान मिलना चाहिए। मुझे Getting the highest value of a column in MongoDB प्रश्न के बारे में पता है, लेकिन AFAIK, यह विस्तारित मामला शामिल नहीं था।mongodb: कॉलम के उच्चतम संख्यात्मक मान को ढूंढना
नीचे दिया गया उदाहरण इस मुद्दे को दर्शाता है। उच्चतम मूल्य के लिए, "age": 70
साथ दस्तावेज़ लौटे किया जाना चाहिए:
[
{
"id": "aa001",
"age": "90"
},
{
"id": "bb002",
"age": 70
},
{
"id": "cc003",
"age": 20,
}
]
खोज()/findOne() क्वेरी बहुत मदद मिलेगी के लिए एक PHP उदाहरण प्रदान करना। आपका बहुत बहुत धन्यवाद!
जॉनीएचके सही समाधान के साथ आया। यहाँ काम कर PHP कोड है:
$cursor = $collection->find(array('age' => array('$not' => array('$type' => 2))), array('age' => 1));
$cursor->sort(array('age' => -1))->limit(1);
लिए काम करता है वाह कि तेज था, धन्यवाद! अच्छी तरह से काम। मैं प्रश्न से संबंधित संबंधित PHP कोड जोड़ दूंगा। – martti