चुनने वाले टूल की मदद से प्रोग्रामर, ऐसी क्वेरी बना सकता है जो अनुरोध की गई Google Ads इकाइयों को फ़ेच करती है. चुनने वालों की मदद से, वापस लाई गई इकाइयों की सूची को छोटा किया जा सकता है और उसे क्रम से लगाया जा सकता है. ज़्यादातर सिलेक्टर में ये तरीके होते हैं:
withCondition()
- इस फ़ंक्शन का इस्तेमाल, किसी सिलेक्टर में शर्त जोड़ने के लिए किया जाता है. एक से ज़्यादा शर्तों का इस्तेमाल करने पर, उन्हें AND ऑपरेटर से जोड़ दिया जाता है. इसका मतलब है कि सिलेक्टर सिर्फ़ उन इकाइयों को दिखाएगा जो बताई गई सभी शर्तों को पूरा करती हैं.
withIds()
- यह फ़ंक्शन, आईडी के कलेक्शन को शर्त के तौर पर जोड़ता है. आईडी के आधार पर तय की गई शर्त को अन्य सभी शर्तों के साथ AND-ed किया जाएगा.
forDateRange()
- इसकी ज़रूरत तब होती है, जब कोई शर्त या ऑर्डरिंग क्लॉज़, Stats फ़ील्ड का रेफ़रंस देता है. जैसे, सीटीआर या इंप्रेशन. अगर आपको 100 से ज़्यादा इंप्रेशन वाले सभी कैंपेन का डेटा चाहिए, तो Google Ads स्क्रिप्ट को तारीख की वह सीमा बतानी होगी जिसके लिए आपको डेटा चाहिए.
orderBy()
- इससे यह तय होता है कि जवाब में मिली इकाइयों को किस क्रम में दिखाया जाए.
withLimit()
- इससे, दिखाई गई इकाइयों की संख्या को तय की गई वैल्यू तक सीमित किया जाता है. यह
orderBy()
के साथ इस्तेमाल करने पर खास तौर पर मददगार होता है. इससे "कल सबसे ज़्यादा इंप्रेशन वाले 10 कीवर्ड" जैसी चीज़ें फ़ेच की जा सकती हैं. डिफ़ॉल्ट रूप से, सभी सिलेक्टर 50,000 पर सेट होंगे. सीमा को मैन्युअल तरीके से तय करके, इस सीमा को बढ़ाया जा सकता है.
इन तरीकों को किसी भी क्रम में कॉल किया जा सकता है. इसका एक अपवाद orderBy()
है, जहां कॉल का क्रम मायने रखता है: इस तरीके के लिए कई कॉल, क्रम से लगाने के कई क्लॉज़ तय करेंगे. ये क्लॉज़, क्रम से लागू होंगे. यहां दिए गए स्निपेट पर ध्यान दें:
selector = selector.forDateRange("LAST_14_DAYS")
.orderBy("metrics.clicks DESC")
.orderBy("metrics.ctr ASC");
नतीजों को क्लिक की संख्या के हिसाब से घटते क्रम में लगाया जाएगा. क्लिक की वैल्यू बराबर होने पर, नतीजों को सीटीआर के हिसाब से बढ़ते क्रम में लगाया जाएगा.
चुनने वाले व्यक्ति के तरीकों को एक साथ जोड़ा जा सकता है. यह कोड
var campaignSelector = AdsApp.campaigns();
campaignSelector.withCondition("metrics.clicks > 10");
campaignSelector.withCondition("metrics.impressions > 1000");
campaignSelector.orderBy("metrics.impressions DESC");
campaignSelector.forDateRange("YESTERDAY");
इसे ज़्यादा कंपैक्ट तरीके से फिर से लिखा जा सकता है:
var campaignSelector = AdsApp.campaigns()
.withCondition("metrics.clicks > 10")
.withCondition("metrics.impressions > 1000")
.orderBy("metrics.impressions DESC")
.forDateRange("YESTERDAY");
चुनने वाले टूल के बन जाने के बाद, selector.get()
को कॉल करके उससे Iterator पाया जा सकता है.
सेलेक्टर का असरदार तरीके से इस्तेमाल करने के बारे में सलाह और तरकीबें पाने के लिए, सबसे सही तरीके पढ़ें.