日期范围

Google Ads 查询语言允许您通过以下方式指定日期范围:

自定义日期范围

您可以采用 ISO 8601 扩展格式 (YYYY-MM-DD) 或基本格式 (YYYYMMDD) 指定日期。建议采用扩展格式 (YYYY-MM-DD),以便于阅读。将 BETWEEN 或比较 运算符(=、>、>=、<、<=)与自定义日期字符串搭配使用:

segments.date BETWEEN '2026-01-01' AND '2026-01-31'
segments.date >= '20260701' AND segments.date <= '20260731'

预定义日期范围

将 DURING 运算符与预定义日期范围字面量搭配使用。DURING 运算符仅支持预定义日期范围,不能与自定义日期字符串搭配使用。

有效的预定义日期范围列表如下:

日期范围 所生成报告的日期范围
TODAY 仅限今天。
YESTERDAY 仅限昨天。
LAST_7_DAYS 过去 7 天(不包含今天)。
LAST_BUSINESS_WEEK 上一个工作周的 5 个工作日(周一至周五)。
THIS_MONTH 当月所有日期。
LAST_MONTH 上个月所有日期。
LAST_14_DAYS 过去 14 天(不包含今天)。
LAST_30_DAYS 过去 30 天(不包含今天)。
THIS_WEEK_SUN_TODAY 上周日到今天的这段时间。
THIS_WEEK_MON_TODAY 上周一到今天的这段时间。
LAST_WEEK_SUN_SAT 从上周日开始为期 7 天的时间段。
LAST_WEEK_MON_SUN 从上周一开始为期 7 天的时间段。

示例:

segments.date DURING LAST_30_DAYS

预定义时间段

某些日期字段是指预定义的时间段,具体如下:

  • segments.week
  • segments.month
  • segments.quarter

使用自定义日期字符串(使用 =、BETWEEN、 >=、<=、> 或 <)过滤这些细分时,您必须指定 时间段的第一天:

  • segments.week:一周的周一(例如 '2026-05-04')。
  • segments.month:每月的第一天(YYYY-MM-01,例如 '2026-05-01')。
  • segments.quarter:日历季度的第一天(YYYY-01-01、YYYY-04-01、YYYY-07-01 或 YYYY-10-01)。

如果您指定的日期不是时间段的第一天,系统会返回 QueryError.MISALIGNED_DATE_FOR_FILTER 错误。 您还可以使用 DURING 运算符和预定义日期范围来过滤这些细分。

例如,如需指定 2026 年 5 月,请使用以下条件,并指定该月的第一天:

segments.month = '2026-05-01'

历史回溯限制

历史报告数据的可用性取决于所选或过滤的日期细分的粒度:

  • 每日、每周和每小时粒度(segments.date、segments.week 和 segments.hour): 支持最长 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 年 的历史数据。如需查询超出 37 个月窗口期的历史数据,请按 segments.month、segments.quarter 或 segments.year 进行细分,或在 SELECT 中省略日期细分,并确保 WHERE 日期范围从每月的第一天开始,到每月的最后一天结束(或按 segments.month、segments.quarter 或 segments.year 进行过滤)。