Kolom yang dapat digabungkan di Ads Data Hub

Umumnya, kolom dengan nama yang sama dalam pintu pembelian yang sama dapat digabungkan di seluruh tabel. Misalnya, adh.google_ads_impressions.impression_id dapat digabungkan dengan adh.google_ads_clicks.impression_id. Dalam contoh ini, Google Display Ads adalah platform pembelian umum, impression_id adalah kolom umum, dan google_ads_impressions dan google_ads_clicks adalah dua tabel yang berbeda.

Ada kompleksitas yang dapat mempersulit penggabungan data di seluruh pintu pembelian. Produk Google yang berbeda menggunakan ID pengguna yang berbeda, dan ID pengguna juga dapat bervariasi dalam satu produk berdasarkan status login.

Gunakan tabel berikut sebagai panduan untuk bergabung di seluruh produk. Join dalam setiap pintu pembelian biasanya akan berfungsi, sedangkan join antara pintu pembelian umumnya tidak akan berfungsi.

Saluran Pembelian Produk Tabel ID yang dapat disambungkan
Iklan Display Google Partner Video Google (tidak termasuk YouTube) adh.google_ads_*
Google Marketing Platform melalui Transfer Data:
Display & Video 360
Campaign Manager 360
adh.dv360_dt_*
adh.cm_dt_*
YouTube Google dijual YouTube Pesan
YouTube (di Google Ads)
YouTube (di Display & Video 360)
adh.yt_reserve_*
adh.google_ads_*
adh.dv360_youtube_*
Partner YouTube dijual Google Ad Manager
Freewheel
adh.partner_sold_cross_sell_*
adh.freewheel_*
Kunci user_id external_cookie device_id_md5

Contoh

Selain ID pengguna dan perangkat, Anda dapat menggabungkan tabel menggunakan sejumlah kolom lain. Untuk mempelajari cara menggabungkan tabel di Ads Data Hub, pilih kolom yang dapat digabungkan dari menu dropdown. Bagian ini berisi kumpulan contoh yang tidak lengkap.

Contoh ini menunjukkan cara menggunakan user_id untuk menggabungkan tabel tayangan, materi iklan, dan konversi.

Kasus penggunaan: Memahami apakah kampanye branding mendorong konversi tambahan.

WITH imp AS (
  SELECT
    user_id,
    COUNTIF(campaign_id IN UNNEST(@brand_campaign_ids)) AS brand_impression,
    COUNTIF(campaign_id IN UNNEST(@perf_campaign_ids)) AS perf_impression,
  FROM adh.google_ads_impressions
  WHERE
    campaign_id IN UNNEST(ARRAY_CONCAT(@perf_campaign_ids, @brand_campaign_ids))
    AND user_id != '0'
  GROUP BY 1
  ),
  conv AS (
  SELECT
    c.user_id,
    COUNT(1) AS conv_count
  FROM adh.google_ads_conversions
  WHERE
    impression_data.campaign_id IN UNNEST(@perf_campaign_ids)
    AND conversion_type IN UNNEST(@conversion_type_list)
    AND user_id != '0'
  GROUP BY 1
  )
SELECT
  SUM(IF(has_brand_traffic AND NOT has_perf_traffic, conv_count, 0)) AS brand_only,
  SUM(IF(NOT has_brand_traffic AND has_perf_traffic, conv_count, 0)) AS perf_only,
  SUM(IF(has_brand_traffic AND has_perf_traffic, conv_count, 0)) AS overlap
FROM
  (
  SELECT
    imp.user_id,
    imp.brand_impression > 0 AS has_brand_traffic,
    imp.perf_impression > 0 AS has_perf_traffic,
    conv.conv_count
  FROM imp
  JOIN conv
    USING (user_id)
  )

Contoh ini menunjukkan cara menggunakan impression_id untuk menautkan data konversi ke data tayangan.

Kasus penggunaan: Memotong statistik tayangan dan konversi berdasarkan negara dan CTC/EVC.

SELECT
  imp.location.country,
  COUNT(1) AS num_imps,
  SUM(IF(attribution_event_type = 'CLICK', 1, 0)) AS ctc_convs,
  SUM(IF(attribution_event_type = 'ENGAGED_VIEW', 1, 0)) AS evc_convs
FROM adh.google_ads_impressions AS imp
LEFT JOIN adh.google_ads_conversions AS conv
  ON (
    imp.impression_id = conv.impression_id
    AND conv.conversion_type IN UNNEST(@conversion_type_list))
WHERE imp.campaign_id IN UNNEST(@campaign_ids)
GROUP BY 1

Contoh ini menunjukkan cara menggabungkan beberapa tabel di beberapa ID.

Kasus penggunaan: Mencantumkan aset yang ditautkan ke kampanye tertentu.

SELECT
  cmp.campaign_id,
  adg.adgroup_id,
  cr.video_message.youtube_video_id
FROM adh.google_ads_campaign AS cmp
JOIN adh.google_ads_adgroup AS adg
  USING (campaign_id)
JOIN adh.google_ads_adgroupcreative AS agc
  USING (adgroup_id)
JOIN adh.google_ads_creative AS cr
  ON (agc.customer_id = cr.customer_id
    AND agc.creative_id = cr.creative_id)
WHERE campaign_id = 123
GROUP BY 1, 2, 3

Contoh ini menunjukkan cara menggabungkan tabel metadata.

Kasus penggunaan: Gabungkan tabel tayangan dengan tabel metadata status untuk menampilkan jumlah cookie unik dan frekuensi rata-rata menurut status.

SELECT
  IFNULL(reg.region_name, 'unspecified') AS state,
  COUNT(DISTINCT user_id) AS users,
  COUNT(1) AS impressions,
  FORMAT('%0.2f', COUNT(1) / COUNT(DISTINCT user_id)) AS avg_imp_per_user
FROM adh.google_ads_impressions AS imp
LEFT JOIN adh.region AS reg
  ON (imp.location.geo_region_id = reg.region_id)
WHERE
  imp.location.country = 'US'
GROUP BY 1