在 BigQuery 上连接表时遇到问题

Trouble with joining tables on BigQuery

我设法在 BigQuery 上将两个 table 连接在一起,但是,我认为它匹配不正确。 clients 包含 75 行的描述性客户名称,而 stats 包含 37342 行的客户统计信息。我正在尝试通过以下查询将这两个 table 使用它们的 ExternalCustomerId 连接在一起:

SELECT 
clients.AccountDescriptiveName AS client_name,
stats.ExternalCustomerId AS client_id,
AverageCost,
AverageCpc,
AverageCpm,
AveragePosition
FROM `298114322003.google_ads1.p_Customer_2670156874` AS clients
JOIN `298114322003.google_ads1.p_AccountStats_2670156874` AS stats
ON clients.ExternalCustomerId = stats.ExternalCustomerId

然而,结果出来了 113026 行。我预计结果为 37342,因为这是 stats table 的结果。我使用了 RIGHT/LEFT JOIN 函数,结果还是一样。关于我应该如何解决这个问题有什么建议吗?谢谢!

AK

看起来您的 stats table 对同一个 ExternalCustomerId 有多个行(这可以理解,例如,如果它被分区并且您在几天内有不同的数据).

尝试进一步探索如下:

SELECT count(*) as total, count(distinct ExternalCustomerId) as uniques
FROM `298114322003.google_ads1.p_AccountStats_2670156874`

如果您复制了 ExternalCustomerId,那么每个客户行都将乘以 stats table.

中的匹配行数