MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मैं पर्ल के साथ मोंगोडब में एकाधिक फ़ील्ड द्वारा कैसे क्रमबद्ध कर सकता हूं?

यहां मूल समस्या यह है कि पर्ल में "हैश" को डिफ़ॉल्ट रूप से "कुंजी" द्वारा आदेश दिया जाता है। "सम्मिलन का क्रम" प्राप्त करने के लिए आपको Tie::IxHash<का उपयोग करना होगा /कोड> इस प्रकार है:

use Tie::IxHash;

my %sort;
tie ( %sort, 'Tie::IxHash' );

my $sort = \%sort;
$sort  =  { "is_instock" => -1, "ua" => 1 };

फिर जब आप इसे अपने MongoDB क्वेरी में उपयोग करते हैं, तो कुंजियों को उनके शाब्दिक क्रम के बजाय आपके द्वारा सम्मिलित किए गए क्रम में माना जाता है।

यह किसी भी तरह से आदेश दिया जाना चाहिए था क्योंकि चाबियाँ शाब्दिक क्रम में हैं, लेकिन मेरा सुझाव है कि आपने कुछ गलत किया है और आपको वैसे भी सम्मिलन आदेश के बारे में पता होना चाहिए।

अन्यथा कारण यह है कि "in_stock" मौजूद नहीं है, या फ़ील्ड का सही पथ नाम नहीं है। आपको "dot notation"<के साथ फ़ील्ड का पूरा पथ निर्दिष्ट करने की आवश्यकता है। /ए> अन्यथा पथ अमान्य है।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. PHP54+ Nginx + PHPFPM + MongoDB में लगातार कनेक्शन या कनेक्शन पूलिंग

  2. नेवला के साथ कई-से-अनेक मानचित्रण

  3. अपने MongoDB एप्लिकेशन अपग्रेड का परीक्षण कैसे करें?

  4. MongoDB में मतदान प्रणाली को मॉडल करने का सबसे अच्छा तरीका

  5. ObjectId तिथि के अनुसार MongoDB परिणाम एकत्र करें