选择器

选择器有助于程序员构建用于提取所请求的 Google Ads 实体的查询。通过使用选择器,编程人员可以精简实体检索结果列表,并为其排序。大多数选择器提供以下方法:

withCondition()
向选择器添加条件。如果使用多个条件,这些条件将使用 AND 运算符组合在一起,也就是说,选择器只会返回满足所有 指定条件的实体。
withIds()
添加一系列 ID 作为 条件。基于 ID 的条件将与所有其他条件使用 AND 运算符组合在一起。
forDateRange()
当条件或排序子句引用 统计信息字段(例如 Ctr 或展示次数)时,需要使用此方法。如果您请求所有展示次数超过 100 的广告系列,Google Ads 脚本需要知道要查看的日期范围。
orderBy()
指定返回的实体的排序方式。
withLimit()
将返回的实体的数量限制为指定的值。此方法与 orderBy() 结合使用时特别有用,可用于提取“昨天展示次数最多的 10 个关键字”等信息。默认情况下,所有选择器都会将限制设置为 50,000。您可以通过手动指定限制来提高此限制。

这些方法可以按任意顺序调用。orderBy() 是一个例外,此方法的调用顺序确实很重要:多次调用此方法将指定多个排序子句,并且这些子句将按顺序应用。请考虑以下代码段:

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

结果按 Clicks 降序排列,Clicks 值相同的结果按 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()从中获取 迭代器。

如需了解高效使用选择器的提示 和技巧,请参阅最佳实践。