Google bigquery 如何在特定日期之间的日期执行SQL联接?

Google bigquery 如何在特定日期之间的日期执行SQL联接?,google-bigquery,Google Bigquery,这可能是难以置信的困难或难以置信的简单,我不知道是哪一个,但我被卡住了 如何联接在特定日期之间发生的数据?我该怎么写?棘手的是,每一行都有一个不同的时间段,每个用户都有一个唯一的时间段。例如: 表A 表B 表C(我想要的那一个) 如果有人想知道下面是用于BigQuery标准SQL的,我正在使用Google BigQuery 或 无论如何,谢谢你。我知道这太难了 SELECT a.User_Id, Start_date, End_Date, (SELECT IFNULL(SUM(

这可能是难以置信的困难或难以置信的简单,我不知道是哪一个,但我被卡住了

如何联接在特定日期之间发生的数据?我该怎么写?棘手的是,每一行都有一个不同的时间段,每个用户都有一个唯一的时间段。例如:

表A

表B

表C(我想要的那一个)


如果有人想知道下面是用于BigQuery标准SQL的,我正在使用Google BigQuery


无论如何,谢谢你。我知道这太难了
SELECT 
  a.User_Id, Start_date, End_Date, 
  (SELECT IFNULL(SUM(clicks),0) FROM TableB WHERE user_Id = a.User_Id 
  AND date BETWEEN Start_date AND End_date) AS Clicks_from_tableB
FROM TableA AS a
ORDER BY user_Id
SELECT 
  a.User_Id, Start_date, End_Date, 
  SUM(IFNULL(clicks, 0))  AS Clicks_from_tableB
FROM TableA AS a
LEFT JOIN TableB AS b
ON a.User_Id = b.User_Id
AND b.date BETWEEN Start_date AND End_date
GROUP BY 1, 2, 3
ORDER BY user_Id