2016-03-17 15 views
11

में नेस्टेड प्रॉपर्टी पर खोजने में सक्षम नहीं है क्या एडब्ल्यूएस डायनेमो डीबी कंसोल से नेस्टेड गुणों पर खोज करना संभव है? मैं सभी शीर्ष स्तर की संपत्तियों पर खोज करने में सक्षम हूं, लेकिन किसी भी नेस्टेड गुणों पर खोज हमेशा खाली परिणाम सेट में परिणाम देती है।DynamoDB AWS कंसोल

उदाहरण के नीचे प्रदान की दस्तावेज़ के लिए मैं स्कैन और कोई भी शीर्ष स्तर मैदान पर फिल्टर जोड़ने के लिए, आईडी, नाम, आदि

हालांकि मैं स्कैन करने में असमर्थ हूँ, और फिल्टर डिवाइस की तरह करने में सक्षम हूँ के लिए। मैं फिल्टर कोशिश कर रहा हूँ के रूप में device.name = 'Xaomi'

{ आईडी: 'jhfdgu75457y8r', नाम: 'पराग', डिवाइस: {नाम: 'Xaomi', देश: 'चीन'} }

कृपया ध्यान दें कि मैं इसे एडब्ल्यूएस कंसोल से कर रहा हूं, और कोई क्लाइंट लाइब्रेरी नहीं। क्या एडब्ल्यूएस कंसोल नेस्टेड ऑब्जेक्ट्स पर फिल्टर की अनुमति देता है?

+1

मुझे एक ही समस्या है। ---- इसके अलावा, मैंने कोड (नोडजेएस) में मान्य किया है कि एक नेस्टेड संपत्ति पर फ़िल्टर करना संभव है। यह ** FilterExpressions ** का उपयोग करके किया जा सकता है। –

उत्तर

-1

फ़िल्टर प्रकार "डिवाइस" और नहीं device.name और चयन में "शामिल" के बदले "=" में DynamoDB में ड्रॉप-डाउन

0

सभी डेटा stored as either a string, binary or number है।

जब आप डायनेमोडीबी तक पहुंचने के लिए एसडीके का उपयोग करते हैं तो यह आम तौर पर इन प्राथमिकताओं को जटिल डेटा प्रकारों जैसे सूचियों और मानचित्रों में परिवर्तित और अनवरोधित कर देगा।

कंसोल केवल मूलभूत डेटा प्रकारों पर काम करता है। इस मामले में आपके डिवाइस विशेषता को स्ट्रिंग के रूप में माना जाता है, और इसलिए आप डिवाइस.नाम नेस्टेड विशेषता द्वारा फ़िल्टर नहीं कर सकते हैं।

हालांकि आप बस एक स्ट्रिंग फ़िल्टर कर सकते हैं। उदाहरण के लिए डिवाइस विशेषता पर फ़िल्टर करें, जिसमें ऑपरेटर का उपयोग किया गया है और मान "name":"Xaomi"