Google Ads API is returning to beta status. Please read our blog post for more details.

Google Ads 查询语言

Google Ads 查询语言可查询以下内容的 Google Ads API:

以下位置中的资源或指标:GoogleAdsService.Search

get 方法可用于同时查询多个资源,这是因为所有服务一次只返回一个资源。

GoogleAdsService 查询的结果是包含多个 GoogleAdsRow 实例的列表,其中每个 GoogleAdsRow 代表一个资源。如果请求了指标,则该行还将包含指标。

如需查看可查询指标(例如展示次数或点击次数)的列表,请参阅 Metrics 文档

有关 GoogleAdsFieldService 中可用字段和资源的元数据

此服务提供可查询字段的目录,其中包含有关其兼容性和类型的详细信息。

GoogleAdsFieldService 查询的结果是包含多个 GoogleAdsField 实例的列表,其中每个 GoogleAdsField 包含有关请求字段的详细信息。

资源和指标

查询指标时,您还可以选择同时返回关联资源的详细信息。然后,您可以立即获取这些资源,修改这些资源,并将其发回给该服务的 mutate 方法。以下是一个示例工作流程:

  1. 查询当前处于 PAUSED 状态且展示次数超过 1000 的所有广告系列。
  2. 处理列表中返回的每个 GoogleAdsRow,并检索每个 GoogleAdsRow 中的广告系列。
  3. 将每个广告系列的状态从 PAUSED 更改为 ENABLED
  4. 使用修改后的广告系列调用 CampaignService.MutateCampaigns 进行更新。

资源查询

有时您关心的可能不是指标。以下是针对广告系列的查询,展示了如何获取广告系列 ID、名称和状态:

SELECT campaign.id, campaign.name, campaign.status
FROM campaign
ORDER BY campaign.id

此查询按广告系列 ID 排序。每个生成的 GoogleAdsRow 都包含一个填充了选定字段的 campaign

要了解还有其他哪些字段可用于广告系列查询,请参阅 Campaign 文档

指标查询

查询指标时,可以同时查询对应的资源。以下是针对广告系列的查询,展示了如何获取广告系列 ID、名称、状态和展示次数:

SELECT campaign.id, campaign.name, campaign.status, metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED' AND metrics.impressions > 1000
ORDER BY campaign.id

此查询仅过滤出状态为 PAUSED 且按广告系列 ID 排序时展示次数超过 1000 次的广告系列。每个生成的 GoogleAdsRow 都包含一个填充了选定指标的 metrics

如需查看可查询指标的列表,请参阅 Metrics 文档

字段元数据

发送到 GoogleAdsFieldService 的查询用于检索字段元数据。以下是有关 campaign.id 字段元数据的查询:

SELECT name, category, selectable, filterable, sortable, selectable_with,
       data_type, is_repeated
WHERE name = campaign.id

您可以将此查询中的 campaign.id 替换为一个资源(如 customercampaign)或一个字段(如 metrics.impressionsad_group.id)。

如需查看可查询字段的列表,请参阅 GoogleAdsField 文档

代码示例

客户端库提供了有关如何在 GoogleAdsService 中使用 Google Ads 查询语言的示例。基本操作文件夹中也包含了各种示例,例如 GetCampaignsGetKeywordsGetArtifactMetadata报告文件夹中包含了 GetKeywordStats 示例。