我在BQ中有以下查询。基本上我有3个表(用户,产品和访问),我想在日期进行加入。
SELECT
product.Date,
SUM(product.quantity) AS quantity,
SUM(users.Users) AS users,
SUM(visitsdata.Visits) AS visits
FROM (
SELECT
product.Date,
product.product,
users.date,
users.Users,
visitsdata.Visits
FROM
[Testdata.productsold] AS product
JOIN
[Testdata.userswithpurchase] AS users
ON
product.Date=users.date) AS usersproduct
JOIN
[Testdata.visits] visitsdata
ON
usersproduct.Date= visitsdata.date
GROUP BY
product.Date
我不是编写查询的专家,但有人可以告诉我我的查询有什么问题吗?
由于
答案 0 :(得分:1)
在空中拍摄,但是 - 请尝试以下
SELECT
[Date],
SUM(quantity) AS quantity,
SUM(Users) AS users,
SUM(Visits) AS visits
FROM (
SELECT
product.Date AS [Date],
product.quantity AS quantity,
users.Users AS Users,
visitsdata.Visits AS Visits
FROM [Testdata.productsold] AS product
JOIN [Testdata.userswithpurchase] AS users
ON product.Date=users.date
JOIN [Testdata.visits] visitsdata
ON product.Date= visitsdata.date
) AS usersproduct
GROUP BY 1
取决于您的数据的性质 - 您可以考虑LEFT JOINs与[INNER] JOIN