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

मोंगोडब में आईएसओडेट के साथ दिनांक क्वेरी काम नहीं कर रही है

हालांकि $date MongoDB विस्तारित JSON का एक हिस्सा है और यही आपको mongoexport के साथ डिफ़ॉल्ट रूप से मिलता है मुझे नहीं लगता कि आप वास्तव में इसे क्वेरी के हिस्से के रूप में उपयोग कर सकते हैं।

यदि $date . के साथ सटीक खोज करने का प्रयास करें नीचे की तरह:

db.foo.find({dt: {"$date": "2012-01-01T15:00:00.000Z"}})

आपको त्रुटि मिलेगी:

error: { "$err" : "invalid operator: $date", "code" : 10068 }

इसे आजमाएं:

db.mycollection.find({
    "dt" : {"$gte": new Date("2013-10-01T00:00:00.000Z")}
})

या (@user3805045 द्वारा निम्नलिखित टिप्पणियां):

db.mycollection.find({
    "dt" : {"$gte": ISODate("2013-10-01T00:00:00.000Z")}
})

ISODate समय के बिना तिथियों की तुलना करने की भी आवश्यकता हो सकती है (@MattMolnar द्वारा नोट किया गया)।

डेटा प्रकार के अनुसार मोंगो शैल में दोनों बराबर होना चाहिए:

<ब्लॉकक्वॉट>

मोंगो शेल तारीख को वापस करने के लिए विभिन्न तरीके प्रदान करता है, या तो एक स्ट्रिंग के रूप में या एक तिथि वस्तु के रूप में:

  • दिनांक() विधि जो वर्तमान तिथि को एक स्ट्रिंग के रूप में लौटाती है।
  • नई तिथि () कंस्ट्रक्टर जो आईएसओडेट () रैपर का उपयोग करके डेट ऑब्जेक्ट लौटाता है।
  • ISODate() कंस्ट्रक्टर जो ISODate() रैपर का उपयोग करके डेट ऑब्जेक्ट लौटाता है।

और ISODate . का उपयोग कर रहे हैं अभी भी एक दिनांक वस्तु लौटानी चाहिए।

{"$date": "ISO-8601 string"} सख्त JSON प्रतिनिधित्व की आवश्यकता होने पर उपयोग किया जा सकता है। एक संभावित उदाहरण Hadoop कनेक्टर है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नए मोंगोडब पीईसीएल एक्सटेंशन में छँटाई कैसे काम करती है?

  2. इंडेक्स मोंगो सुनिश्चित करते हुए बहुत सारी खुली फाइलें

  3. प्रोजेक्शन खोज क्वेरी के साथ काम नहीं कर रहा है

  4. MongoDB प्रारंभ करने में विफल - *** fassert () विफलता के बाद निरस्त करना

  5. मोंगो:ऐसे आइटम ढूंढें जिनमें एक निश्चित फ़ील्ड नहीं है