零指标

本指南介绍了 Google Ads API 报告中为何会显示指标为零的行,以及如何在查询中排除或处理这些行。

搜索结果中的零指标

执行查询时,您可能会遇到实体指标为零的情况。可能的原因如下:

  • 这些实体不符合展示条件。
  • 在报告的日期范围内处于暂停状态。

您往往需要通过查询结果获取有关广告系列效果的信息。在此背景下,零指标可能并不理想。为了生成更有用的报告,您可以明确排除零值指标。

使用谓词排除零值指标

谓词是一种计算结果为 TRUE、FALSE 或 UNKNOWN 的表达式。谓词用于 Google Ads 查询语言中 WHERE 子句的搜索条件。

以下查询演示了如何使用谓词显式移除零值指标:

SELECT
  campaign.id,
  metrics.impressions
FROM campaign
WHERE metrics.impressions > 0

通过细分排除零值指标

细分报告时,系统始终会排除零值指标,前提是所有选定指标均为零(请参阅返回了零值指标的行)。

如需细分报告,请在搜索查询的 SELECT 子句中添加任何 segments 字段(在 WHERE 中过滤核心日期细分,而不选择 SELECT 中的核心日期细分,不会细分报告)。例如,如果您按 segments.date 对报告进行细分,则指标会按日期细分,每个日期对应一行。如果某个日期没有指标,则不会在此类报告中返回该日期。

对于以下查询,报告将不包含零指标行:

SELECT
  campaign.name,
  metrics.impressions,
  segments.date
FROM campaign
WHERE segments.date DURING LAST_30_DAYS

返回的指标为零的行

如果细分后,某行的所有所选指标均为零,则不会返回该行。例如,请考虑以下选择 metrics.impressions、metrics.clicks 和 metrics.conversions 的查询:

SELECT
  ad_group_criterion.criterion_id,
  metrics.impressions,
  metrics.clicks,
  metrics.conversions,
  segments.date
FROM keyword_view
WHERE segments.date BETWEEN '2026-01-01' AND '2026-01-31'

生成的报告不会包含任何所选的三个指标均为零的行,但会返回至少一个所选指标大于零的行。

查询超出数据保留期限的历史数据时,系统不会提供 37 个月以前的细粒度数据,也不会返回任何行。如果请求的细粒度日期段(segments.date、segments.week 和 segments.hour)涵盖的时间范围超过 37 个月,则在 v24 及更高版本中会返回 DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED(在 v23 中会返回 DateRangeError.UNKNOWN)。高级别汇总数据(segments.month、segments.quarter 和 segments.year)的保留期限为 11 年,从下一个完整日历周期的开始算起。例如,如果 11 年的回溯期截止日期为 2015-03-22(或 2015-03-01),则从截止日期后的第一个完整日历月 (2015-04-01) 开始提供月度数据。如需了解详情,请参阅日期范围。