选择器有助于程序员构建查询,以提取所请求的 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()从中获取
迭代器。
如需了解有关高效使用选择器的提示 和技巧,请参阅最佳实践。