選取器可協助程式設計師建構查詢,以擷取所需的 Google Ads 實體。利用選取器可以縮小搜尋範圍 擷取實體並加以排序大部分的選取器都有以下方法:
withCondition()
- 在選取器中加入條件。如果使用多個條件,系統會將這些條件以 AND 運算連結,也就是說,選取器只會傳回符合「所有」指定條件的實體。
withIds()
- 新增一組 ID 做為條件。以 ID 為依據的條件會與所有其他條件以 AND 連結。
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。
請參閱最佳做法,瞭解如何有效使用選取器。