BigQuery 匹配 Table 查找 DCM 数据传输
BigQuery Match Table Lookup for DCM Data Transfer
使用 DCM 的数据传输 v2,您可以在 GCS 中获得 3 个主要的 table 数据:
- p_activity_166401
- p_click_166401
- p_impression_166401
伴随着大量匹配项 table,例如:
- p_match_table_advertisers_166401
- p_match_table_campaigns_166401
Table 1: p_activity_166401
Row | Event_time | User_ID | Advertiser_ID | Campaign_ID |
------ | ------------- | ------- | ------------- | ----------- |
1 | 149423090566 | AMsySZa | 5487307 | 9638421 |
2 | 149424804284 | 2vmdsXS | 5487307 | 10498283 |
Table 2: p_match_table_advertisers_166401
Row | Advertiser_ID | Advertiser |
------ | ------------- | ----------- |
1 | 5487307 | Company A |
2 | 5487457 | Company B |
如何在查询中引用 Table 1 中的值 Table 2 和 return 来自 Table 2 的值?
我想要这样的结果:
Row | Advertiser | User_ID |
------ | ---------- | ----------- |
1 | Company A | AMsySZa |
2 | Company A | 2vmdsXS |
一直在这里和在线搜索,但我似乎无法找到关于如何在 table 中进行查找的明确参考,提前致歉,这是我所缺少的非常简单的事情:)
编辑
因此,在正确的方向推动下,我找到了 JOIN 函数...
SELECT
*
FROM
[dtftv2_sprt.p_activity_166401]
INNER JOIN
[dtftv2_sprt.p_match_table_advertisers_166401]
ON
[p_activity_166401.Advertiser_ID] =
p_match_table_advertisers_166401.Advertiser_ID]
LIMIT
100;
错误:未找到字段 'p_activity_166401.Advertiser_ID'。
那绝对是table中的一个字段。
所以这个查询非常适合创建一个包含所有数据的视图。
SELECT
*
FROM
[dtftv2_sprt.p_activity_166401]
INNER JOIN
[dtftv2_sprt.p_match_table_advertisers_166401]
ON
dtftv2_sprt.p_activity_166401.Advertiser_ID = dtftv2_sprt.p_match_table_advertisers_166401.Advertiser_ID;
使用视图,我现在可以 运行 更小的查询来提取我想要的数据。感谢 Mikhail Berlyant 指引我正确的方向。
使用 DCM 的数据传输 v2,您可以在 GCS 中获得 3 个主要的 table 数据:
- p_activity_166401
- p_click_166401
- p_impression_166401
伴随着大量匹配项 table,例如:
- p_match_table_advertisers_166401
- p_match_table_campaigns_166401
Table 1: p_activity_166401
Row | Event_time | User_ID | Advertiser_ID | Campaign_ID |
------ | ------------- | ------- | ------------- | ----------- |
1 | 149423090566 | AMsySZa | 5487307 | 9638421 |
2 | 149424804284 | 2vmdsXS | 5487307 | 10498283 |
Table 2: p_match_table_advertisers_166401
Row | Advertiser_ID | Advertiser |
------ | ------------- | ----------- |
1 | 5487307 | Company A |
2 | 5487457 | Company B |
如何在查询中引用 Table 1 中的值 Table 2 和 return 来自 Table 2 的值?
我想要这样的结果:
Row | Advertiser | User_ID |
------ | ---------- | ----------- |
1 | Company A | AMsySZa |
2 | Company A | 2vmdsXS |
一直在这里和在线搜索,但我似乎无法找到关于如何在 table 中进行查找的明确参考,提前致歉,这是我所缺少的非常简单的事情:)
编辑 因此,在正确的方向推动下,我找到了 JOIN 函数...
SELECT
*
FROM
[dtftv2_sprt.p_activity_166401]
INNER JOIN
[dtftv2_sprt.p_match_table_advertisers_166401]
ON
[p_activity_166401.Advertiser_ID] =
p_match_table_advertisers_166401.Advertiser_ID]
LIMIT
100;
错误:未找到字段 'p_activity_166401.Advertiser_ID'。
那绝对是table中的一个字段。
所以这个查询非常适合创建一个包含所有数据的视图。
SELECT
*
FROM
[dtftv2_sprt.p_activity_166401]
INNER JOIN
[dtftv2_sprt.p_match_table_advertisers_166401]
ON
dtftv2_sprt.p_activity_166401.Advertiser_ID = dtftv2_sprt.p_match_table_advertisers_166401.Advertiser_ID;
使用视图,我现在可以 运行 更小的查询来提取我想要的数据。感谢 Mikhail Berlyant 指引我正确的方向。