Ogólnie można złączać ze sobą w różnych tabelach pola o tej samej nazwie w ramach identycznej usługi umożliwiającej zakup reklam, np. pole adh.google_ads_impressions.impression_id
można złączyć z polem adh.google_ads_clicks.impression_id
. W tym przykładzie Reklamy displayowe Google to wspólna usługa umożliwiającą zakup reklam, impression_id
to wspólne pole, a google_ads_impressions
i google_ads_clicks
to 2 różne tabele.
Złączanie danych z różnych usług umożliwiających zakup reklam może być utrudnione, ponieważ wiążą się z tym pewne komplikacje. Różne usługi Google korzystają z odmiennych identyfikatorów użytkownika, które mogą się też zmieniać w obrębie tej samej usługi w zależności od stanu logowania.
Przy złączaniu danych z różnych usług kieruj się informacjami z tabeli poniżej. Złączenia w ramach poszczególnych usług umożliwiających zakup reklam będą na ogół działać, ale złączenia między takimi usługami przeważnie nie będą działać.
Usługa umożliwiająca zakup reklam | Usługi | Tabele | Identyfikatory, które można złączać |
---|---|---|---|
Reklamy displayowe Google | Sieć partnerów wideo Google (z wyjątkiem YouTube) | adh.google_ads_*
|
|
Google Marketing Platform | Za pomocą Przenoszenia danych: Display & Video 360 Campaign Manager 360 |
adh.dv360_dt_* adh.cm_dt_*
|
|
Reklamy w YouTube sprzedawane przez Google | YouTube Reserve YouTube (w Google Ads) YouTube (w Display & Video 360) |
adh.yt_reserve_*
adh.google_ads_*
adh.dv360_youtube_*
|
|
Reklamy w YouTube sprzedawane przez partnerów | Google Ad Manager FreeWheel |
adh.partner_sold_cross_sell_*
adh.freewheel_* |
|
Klucz | user_id |
external_cookie |
device_id_md5 |
Przykłady
Tabele możesz też złączać za pomocą innych pól niż identyfikatory użytkowników i urządzeń. Aby się dowiedzieć, jak złączać tabele w Centrum danych reklam, wybierz w menu pole, które można złączać. Ta sekcja zawiera wybrane przykłady.
- Wszystkie
- user_id
- impression_id
- campaign_id
- customer_id
- region_id
Ten przykład pokazuje, jak za pomocą pola user_id
złączać tabele wyświetleń, kreacji i konwersji.
Przypadek użycia: sprawdzanie, czy kampanie promujące markę przynoszą dodatkowe konwersje.
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)
)
Ten przykład pokazuje, jak za pomocą pola impression_id
złączać dane o konwersjach z danymi o wyświetleniach.
Przypadek użycia: podział statystyk wyświetleń i konwersji według kraju oraz według 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
Ten przykład pokazuje, jak złączać kilka tabel za pomocą większej liczby identyfikatorów.
Przypadek użycia: wyświetlanie listy komponentów powiązanych z konkretną kampanią.
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
Ten przykład pokazuje, jak złączać tabele metadanych.
Przypadek użycia: złączanie tabeli wyświetleń z tabelą metadanych stanu w celu wyświetlania liczby i średniej częstotliwości występowania unikalnych plików cookie według ich stanu.
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