सिलेक्टर

सिलेक्टर, प्रोग्रामर की ऐसी क्वेरी बनाने में मदद करते हैं जो Google Ads की मनमुताबिक इकाइयों को फ़ेच कर सके. सिलेक्टर की मदद से, वापस ली गई इकाइयों की सूची को छोटा किया जा सकता है और उन्हें क्रम में लगाया जा सकता है. ज़्यादातर सिलेक्टर के पास ये तरीके हैं:

withCondition()
सिलेक्टर में एक शर्त जोड़ता है. अगर कई शर्तों का इस्तेमाल किया जाता है, तो उन्हें एक साथ और उनके साथ जोड़ा जाता है. दूसरे शब्दों में, सिलेक्टर सिर्फ़ वे इकाइयां दिखाएगा जो तय की गई सभी शर्तों को पूरा करती हैं.
withIds()
शर्त के तौर पर आईडी का कलेक्शन जोड़ता है. आईडी वाली शर्त को अन्य सभी के साथ AND-ed किया जाएगा.
forDateRange()
यह तब ज़रूरी होता है, जब किसी शर्त या ऑर्डर क्लॉज़ में आंकड़े फ़ील्ड का रेफ़रंस होता है, जैसे कि Ctr या इंप्रेशन. अगर 100 से ज़्यादा इंप्रेशन वाले सभी कैंपेन के लिए अनुरोध किया जाता है, तो Google Ads स्क्रिप्ट को तारीख की सीमा की जानकारी होनी चाहिए.
orderBy()
यह बताता है कि दिखाई गई इकाइयों का क्रम क्या है.
withLimit()
यह नीति, दिखाई गई इकाइयों की संख्या को बताई गई वैल्यू तक सीमित करती है. "कल सबसे ज़्यादा इंप्रेशन वाले 10 कीवर्ड" जैसी चीज़ों को पाने के लिए, यह orderBy() के साथ मिलकर खास तौर पर काम आता है. डिफ़ॉल्ट रूप से, सभी सिलेक्टर इस सीमा को 50,000 पर सेट करेंगे. मैन्युअल तौर पर सीमा तय करके इस सीमा को बढ़ाया जा सकता है.

इन तरीकों को किसी भी क्रम में लागू किया जा सकता है. इसका एक अपवाद orderBy() है, जहां कॉल का क्रम वाकई मायने रखता है: इस तरीके के लिए किए जाने वाले कई कॉल में कई ऑर्डर करने वाले क्लॉज़ तय होंगे और वे क्रम से लागू होंगे. इन स्निपेट पर ध्यान दें:

selector = selector.forDateRange("LAST_14_DAYS")
    .orderBy("metrics.clicks DESC")
    .orderBy("metrics.ctr ASC");

क्लिक के हिसाब से, नतीजों को घटते हुए क्रम में रखा जाएगा. बराबर क्लिक की वैल्यू वाले नतीजे Ctr के हिसाब से बढ़ते क्रम में लगाए जाएंगे.

सिलेक्टर के तरीकों को किए जाने वाले कॉल को एक साथ चेन में रखा जा सकता है. यह कोड

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 पाया जा सकता है.

सिलेक्टर के बेहतर इस्तेमाल से जुड़े सुझाव और तरकीबों के लिए, सबसे सही तरीके पढ़ें.