本指南介绍了 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 个月之前的细粒度数据,也不会返回行。对于涵盖 37 个月之前范围的细粒度日期细分(segments.date、segments.week 和 segments.hour)的请求,系统会在 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)开始提供月度数据。如需了解详情,请参阅 日期范围。