2012-07-25 18 views
8

Google स्प्रेडशीट API के साथ एक और समस्या। मैं वॉरसॉ से हमारे डेटाबेस से सभी ग्राहकों को प्राप्त करने के लिए क्वेरी() फ़ंक्शन का उपयोग करने का प्रयास कर रहा हूं। हालांकि Google एपीआई मेरी क्वेरी को पार्स करने में बड़ी समस्या है। मैंने इसे कुछ बार चेक किया है और सब कुछ ठीक है - अर्धविराम, विभिन्न apostrophes और कॉलम नामों की कोशिश की - यह अभी भी काम नहीं करेगा। मैं चादर सेल में इस कोड को लिखें:Google स्प्रेडशीट क्वेरी त्रुटि - कॉलम मौजूद नहीं है

= Query(ImportRange("0ArsOaWajjzv9dEdGTUZCWFc1NnFva05uWkxETVF6Q0E"; "Kuchnia polska!A3:G40"); "select B where E contains 'Warszawa'") 

और इस तरह त्रुटि मिलती है:

error: Invalid query: Column [E] does not exist in table. 

और मैं 110% यकीन है कि स्तंभ मौजूद है और स्प्रैडशीट कुंजी ठीक है कर रहा हूँ;)

उत्तर

14

यदि आप कक्षों के आयत के प्रत्यक्ष संदर्भ के साथ Query फ़ंक्शन का उपयोग कर रहे हैं, तो आप कॉलम का संदर्भ देने के लिए पूंजी अक्षरों का उपयोग करते हैं। हालांकि, यदि आप Query का उपयोग किसी सरणी सूत्र के आउटपुट के विरुद्ध कर रहे हैं, जैसे ImportRange से वापसी, तो आपको कॉलम को संदर्भित करने के लिए Col1, Col2, ... का उपयोग करने की आवश्यकता है। तो, अपने उदाहरण क्वेरी स्ट्रिंग को पढ़ने के लिए की आवश्यकता होगी:

"select Col2 where Col5 contains 'Warszawa'" 

कार्य उदाहरण:

=Query(ImportRange("0AtEH2Kw9zfIodEQ2dFNFam9sdEFEZlVnNEV3ZEZMZEE", "data!A:G"), "select Col3, count(Col4) group by Col3 order by count(Col4) desc label count(Col4) 'count'") 

मुझे पता नहीं क्यों यह सिर्फ आप एक शीर्ष लेख पंक्ति से नामों का उपयोग नहीं करता है है।

+1

धन्यवाद! उत्सुक जहां आपको यह संकेत मिला! एफवाईआई, यह भी एक समस्या है जब आप प्रश्न/प्रकार/ट्रांसपोज़ जैसे घोंसले (ट्रांसपोज़ (क्वेरी (ए 1: बी 3; "चुनें * जहां बी> = 2")); "ए चुनें") (' यह कहता है कि कॉलम [ए] मौजूद नहीं है)। लेकिन अगर मैं कर्नल 1 का उपयोग करता हूं तो यह काम करता है। – Fuhrmanator

+1

मुझे आयातित रेंज से पूछताछ में समस्याएं आ रही थीं, इसलिए मैंने 'google स्प्रेडशीट क्वेरी आयात' के लिए गुगल किया और एक उदाहरण पर उतरा जो 'Col1 ... Coln' सम्मेलन का उपयोग करता था। – George

+0

@ जॉर्ज। क्या कोई ऐसी सेटिंग्स है जो मुझे स्रोत स्प्रेडशीट पर करने की ज़रूरत है? मैंने डेटा सफलतापूर्वक आयात किया है लेकिन केवल संख्याएं आयात की जाती हैं, तारों में तार होने वाले कक्ष खाली होते हैं। – putoshop

2

वैकल्पिक रूप से आप इस मामले में फ़िल्टर फ़ंक्शन का प्रयास कर सकते हैं और फिर आपको एसक्यूएल से परेशान करने की आवश्यकता नहीं है। :)

= फ़िल्टर (ImportRange ("0ArsOaWajjzv9dEdGTUZCWFc1NnFva05uWkxETVF6Q0E", "KUCHNIA polska बी 3: B40"); ImportRange ("0ArsOaWajjzv9dEdGTUZCWFc1NnFva05uWkxETVF6Q0E", "KUCHNIA Polska E3: e40!") = "Warszava")

हालांकि मैं मानता हूं कि यह दो आयात रेंज कार्यों के कारण इतना सुंदर नहीं है।

उम्मीद है कि यह वैसे भी मदद की है।

संबंधित मुद्दे