You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改广告系列名称后,如何清除BigQuery导出中的重复Campaign ID?

解决BigQuery广告资产名称变更导致指标重复的方案

核心思路

问题根源是Google Ads的BigQuery导出采用每日快照存储,资产名称变更会生成新行但ID保持不变。解决重点是按ID聚合指标的同时,绑定该ID对应的最新名称,避免因名称变动导致的重复统计。


具体实现方法

1. BigQuery层预处理(推荐)

通过创建视图或物化视图统一数据逻辑,从源头解决重复问题:

  • 第一步:提取每个资产ID的最新名称
WITH latest_campaigns AS (
  SELECT 
    campaign_id,
    campaign_name,
    MAX(_PARTITIONTIME) AS latest_update_time
  FROM `your-project.your-dataset.google_ads_campaigns`
  GROUP BY campaign_id, campaign_name
  QUALIFY ROW_NUMBER() OVER (PARTITION BY campaign_id ORDER BY latest_update_time DESC) = 1
),
latest_adgroups AS (
  SELECT 
    ad_group_id,
    ad_group_name,
    MAX(_PARTITIONTIME) AS latest_update_time
  FROM `your-project.your-dataset.google_ads_ad_groups`
  GROUP BY ad_group_id, ad_group_name
  QUALIFY ROW_NUMBER() OVER (PARTITION BY ad_group_id ORDER BY latest_update_time DESC) = 1
)
  • 第二步:关联指标表,用最新名称替换并聚合数据
SELECT 
  lc.campaign_name,
  lag.ad_group_name,
  SUM(metrics.impressions) AS total_impressions,
  SUM(metrics.clicks) AS total_clicks,
  DATE_TRUNC(_PARTITIONTIME, MONTH) AS report_month
FROM `your-project.your-dataset.google_ads_performance` pr
LEFT JOIN latest_campaigns lc ON pr.campaign_id = lc.campaign_id
LEFT JOIN latest_adgroups lag ON pr.ad_group_id = lag.ad_group_id
GROUP BY lc.campaign_name, lag.ad_group_name, report_month

2. Power BI端直接处理

若无法修改BigQuery配置,可在Power BI内完成数据清理:

  • 导入数据后,按campaign_id/ad_group_id分组,用「最新日期对应的名称」作为该ID的统一名称(可通过添加计算列或分组依据实现)
  • 以「ID+最新名称」为维度,聚合展示量、点击量等指标,避免按变动后的名称重复统计
  • 注意:需同步筛选日期范围,确保名称取数的时效性

3. 团队操作规范(预防方案)

  • 要求修改资产名称时,在名称后添加版本标识(如[V2]),保留原ID不变,既区分新旧名称,又不影响指标聚合
  • 建立名称变更同步机制,修改后及时更新报表层的名称映射逻辑

内容的提问来源于stack exchange,提问作者Marhis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 00:32:41