【发布时间】:2020-02-02 09:54:28
【问题描述】:
我无法在两个表之间正确地求和,我不明白原因。如果有人帮助我,我会非常感激。
我的第一个查询非常简单,效果很好。 2020 年 1 月 22 日的结果是 Cost="252.263602"。这是正确的答案。
SELECT
Date,
AdGroupId,
SUM(A1.Cost)/1000000 AS Cost
FROM
`table` A1
GROUP BY
1, 2
ORDER BY
Date DESC
但我需要将这张表与另一张表合并以获取更多信息。为此,我有以下查询:
SELECT
A1.Date,
A1.AdGroupId,
SUM(V1.VideoViews) AS VideoViews,
SUM(A1.Cost)/1000000 AS Cost
FROM
`table` A1
INNER JOIN
`table2` V1
ON
(A1.Date = V1.Date
AND A1.AdGroupId = V1.AdGroupId)
GROUP BY
1, 2
ORDER BY
Date DESC
2020 年 1 月 22 日的结果如何?成本 = “1009.054408”。错了……
我尝试了不同的 JOINS,用 USING 更改为 ON...但它不起作用。
我尝试在没有 SUM 的情况下加入两个表,并且效果很好。我得到信息,我可以从两个表中加入更多列。
我在做什么以得到 SUM 中的错误错误?
非常感谢!
【问题讨论】:
-
这涉及一个常见错误,人们想要一些连接,每个可能涉及不同的键,一些子查询,每个可能涉及连接和/或聚合,但他们错误地尝试完成所有连接然后全部聚合或聚合以前的聚合。在适当的行上编写单独的聚合和/或聚合一个案例语句选择行;加入常见的唯一列集。有时 DISTINCT 聚合可以在非键连接后选择正确的值。 PS 片段适用于 css/html/javascript。使用代码块。 PS 对于代码问题,请提供minimal reproducible example。 How to Ask
-
这能回答你的问题吗? sql sum data from multiple tables
-
这是一个常见问题解答。在考虑发布之前,请阅读您的教科书和/或手册和谷歌任何错误消息或您的问题/问题/目标的许多清晰、简洁和精确的措辞,有和没有您的特定字符串/名称和站点:stackoverflow.com 和标签;阅读许多答案。如果您发布问题,请使用一个短语作为标题。反映你的研究。请参阅How to Ask 和投票箭头鼠标悬停文本。 PS我刚刚用“sql site:stackoverflow.com before:2011”搜索了你的标题。
标签: sql join group-by google-bigquery sum