Campos que se pueden unir en el Centro de Datos de Anuncios

Generalmente, se pueden unir campos con el mismo nombre dentro de la misma puerta de compra entre las tablas. Por ejemplo, adh.google_ads_impressions.impression_id. se puede unir con adh.google_ads_clicks.impression_id. En este ejemplo, Los anuncios gráficos de Google son la puerta de compra más común, impression_id es el campo común y google_ads_impressions y google_ads_clicks son las dos en diferentes tipos de tablas particionadas.

Existen complejidades que pueden dificultar la unión de datos a través de los canales de compra. Los diferentes productos de Google utilizan diferentes IDs de usuario (los IDs de usuario también pueden variar) dentro de un solo producto según el estado de acceso.

Usa la siguiente tabla como guía para unirte a varios productos. Uniones dentro de funcionaría cada puerta de compra, mientras que las uniones no lo hará.

Compra Puerta Productos Tablas IDs que se pueden unir
Google Anuncio gráfico Anuncios Google Videos Socios (excluye YouTube) adh.google_ads_*
Google Beneficios de marketing Plataforma mediante Data Transferencia:
Anuncios gráficos y Video 360
Campaña Manager 360
adh.dv360_dt_*
adh.cm_dt_*
YouTube Google vendido YouTube Reservar
YouTube (en Google Ads)
YouTube (en Anuncios gráficos y Video 360)
adh.yt_reserve_*
adh.google_ads_*
adh.dv360_youtube_*
YouTube Socio vendido Anuncio de Google Administrador
FreeWheel
adh.partner_sold_cross_sell_*
adh.freewheel_*
Clave user_id external_cookie device_id_md5

Ejemplos

Además de los IDs de usuarios y dispositivos, puedes unir tablas usando otras . Para aprender a unir tablas en el Centro de Datos de Anuncios, selecciona un campo que se pueda unir en el menú desplegable. En esta sección, se incluye un conjunto no exhaustivo de ejemplos.

En este ejemplo, se muestra cómo usar user_id para unir elementos impresiones, creatividades y conversiones.

Caso de uso: Comprenda si las campañas de desarrollo de la marca generan conversiones.

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)
  )

En este ejemplo, se muestra cómo usar impression_id para Vincula los datos de conversiones con los datos de impresiones.

Caso de uso: Divide las estadísticas de impresiones y conversiones según el país y 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

En este ejemplo, se muestra cómo unir varias tablas en múltiples IDs.

Caso de uso: Enumera los activos vinculados a una campaña específica.

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

En este ejemplo, se muestra cómo unir tablas de metadatos.

Caso de uso: Une una tabla de impresiones con la tabla de metadatos de estado a mostrar el recuento de cookies únicas y la frecuencia promedio por estado.

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