Monday 15 June 2015

php - MongoDB Nested $or query -


एक मोंगो प्रविष्टि का उदाहरण:

  array ('name' = & gt; blog एक ',' ब्लॉग श्रेणी '= & gt; सरणी (' displayAndLightMeasurement '= & gt;' 1 ',' LEDAndDisplayTestInstrument '= & gt;' 0 '));  

इस काम की तरह एक प्रश्न ठीक है:

  $ blogInfoRaw = $ संग्रह-> खोज (सरणी ('blogCategory' = & gt; सरणी ('displayAndLightMeasurement '= & Gt;' 1 ')));  

जब मैं '$ या' क्वेरी की कोशिश करता हूं जैसे:

  $ blogInfoRaw = $ संग्रह- & gt; खोजें ( सरणी ('$' या '= & gt; सरणी (' blogCategory '= & gt; सरणी (' displayAndLightMeasurement '= & gt;' 1 ')), सरणी (' blogCategory '= & gt; सरणी (' LEDAndDisplayTestInstrument '= & gt; 1' ))));  

मुझे यह त्रुटि मिलती है:

  $ या अस्थायी सरणी की आवश्यकता  

मैं क्या कर रहा हूं?

आप वास्तव में एम्बेडेड फ़ील्ड का संदर्भ देने के लिए उपयोग करना चाहते हैं:

  $ blogInfoRaw = $ संग्रह- & gt; ढूँढें (सरणी ('$' या '= & gt; सरणी (अरै (' blogCategory.displayAndLightMeasurement '= & gt;' 1 '), सरणी (' blogCategory.LEDDDisplayTestInstrument '= & gt;' 1 '))) );  

अन्यथा आपके द्वारा उपयोग किए जा रहे अंकन का अर्थ है कि एम्बेडेड स्तर में उपस्थित "केवल" तत्व वे हैं जो आप निर्दिष्ट करते हैं यह सच नहीं है क्योंकि कई चाबियां हैं इसलिए "डॉट नोटेशन" इस कुंजी को अलग-अलग कुंजियों को संदर्भित करके हल करता है।

PHP सरणी संकेतन यहाँ मदद नहीं करता है, लेकिन [] भी

आधिकारिक मोंगोडीबी उदाहरणों की तुलना करते समय एक json_encode जारी करने में अक्सर मदद मिलती है।


No comments:

Post a Comment