6
pymongo
जब से tags
कैसे pymongo में सूची में से एक तत्व क्वेरी करने के लिए
db.users.find({"pseudo":"alucaard"}).distinct("produit_up")
Out[1]:
[{u'abus': 0,
u'avctype': u'image/jpeg',
u'date': u'2012-09-15',
u'description': u'le fameux portable solide',
u'id': u'alucaard134766932677',
u'namep': u'nokia 3310',
u'nombre': 1,
u'orientation': u'portrait',
u'photo': ObjectId('5053cd4e3a5f3a0990da8a61'),
u'prix': 1000,
u'tags': [u'solide', u'le', u'fameux', u'portable'],
u'vendu': False}]
list(db.users.find({"solide":{"$in":{"document_up.tags"}}}))
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\IPython\core\interactiveshell.py", line 2746, in run_code exec code_obj in self.user_global_ns, self.user_ns
File "<ipython-input-1-8dff98261d7a>", line 1, in <module>
list(db.users.find({"solide":{"$in":{"document_up.tags"}}}))
File "C:\Python27\lib\site-packages\pymongo\cursor.py", line 778, in next
if len(self.__data) or self._refresh():
File "C:\Python27\lib\site-packages\pymongo\cursor.py", line 729, in _refresh
self.__uuid_subtype))
InvalidDocument: Cannot encode object: set(['document_up.tags'])
नायब क्वेरी और तत्व की कोशिश कर मुझे एक त्रुटि फेंकता है: अपने उपयोगकर्ताओं को एक सीमित आकार है, pymongo उपयोगकर्ताओं के लिए सिर्फ एक चाल उदाहरण के लिए : पाठ में, बस इसे एक सेट का उपयोग कर परिवर्तित, एक सूची के लिए सेट परिवर्तित
phrase = "hi you, how are you, am i using this"
- पहला कदम: अल्पविराम या डॉट्स हटाने नियमित अभिव्यक्ति searc से बचने के लिए hs।
- सेकंड, शब्दों को विभाजित करने के लिए
phrase.split()
का उपयोग करें। - इसे डुप्लिकेट शब्दों से बचने के लिए
set
पर जोड़ें। - एक
list
- को सेट परिवर्तित यह एक अच्छा विचार हो सकता है एक dictionnary कि कुछ शब्द उस सूची से निकाल दिया जाएगा, जैसे युक्त बनाने के लिए "कैसे", "तुम", "मुझे", ... लेकिन यह बहुत गणना करेगा।
आशा है कि यह विचार मदद करेगा।
तो यह उलटा था ?! क्योंकि तर्क में, यदि कोई सूची में है, तो हम एक शब्द खोजते हैं, और यदि कोई शब्द में है तो हम सूची नहीं चाहते हैं? –
@AbdelouahabPp वास्तव में मोंगो में यह 'field_name IN (1,2,3) ' – Sammaye
के साथ इस तरह से एसक्यूएल की तरह है क्योंकि मुझे लगता है कि मैं सीधे" numql "कूद गया था, एसईसीएल चरण मिला: पी आपको फिर से धन्यवाद –