SQL查询在多个表中按天统计记录的简写方法

SQL查询在多个表中按天统计记录的简写方法,sql,google-bigquery,Sql,Google Bigquery,我试图创建一个表来验证数据集中许多不同表中的数据。我使用下面的SQL查询来实现这一点,但是是否有任何方法可以节省时间,在顶级SELECT语句或子查询中复制数据集中所有表的名称 SELECT Date, records_table1, records_table2... FROM (SELECT RowDate as Date, Count(RowDate) AS records_table1 FROM [project:dataset.table1] GROUP BY Date), (SE

我试图创建一个表来验证数据集中许多不同表中的数据。我使用下面的SQL查询来实现这一点,但是是否有任何方法可以节省时间,在顶级SELECT语句或子查询中复制数据集中所有表的名称

SELECT Date, records_table1, records_table2...

FROM

(SELECT RowDate as Date, Count(RowDate) AS records_table1 FROM [project:dataset.table1] GROUP BY Date),

(SELECT RowDate as Date, Count(RowDate) AS records_table2 FROM [project:dataset.table2] GROUP BY Date),

...

您还可以使用
联合所有人

select RowDate, sum(table1) as records_table1, sum(table2) as records_table2
from (select RowDate, 1 as table1, 0 as table2
      from [project:dataset.table1] 
      union all
      select RowDate, 0, 1
      from [project:dataset.table2] 
     ) t
group by RowDate;

您还可以使用
联合所有人

select RowDate, sum(table1) as records_table1, sum(table2) as records_table2
from (select RowDate, 1 as table1, 0 as table2
      from [project:dataset.table1] 
      union all
      select RowDate, 0, 1
      from [project:dataset.table2] 
     ) t
group by RowDate;

表1和表2的连接点是什么?RowDate-我只需要为date显示一列,然后为每个表显示一列,显示每个日期的记录数(作为记录计数)好的,所以这两个表之间没有自然连接?见下文-我想这就是我写它的方式。在RowDate上连接表1和表2的是什么?我只需要为date显示一列,然后为每个表显示一列,显示每个日期的记录数(作为记录计数)好了,那么这两个表之间没有自然连接了吗?请看下面-我想这就是我写它的方式