我有多个查询,如下所示:
select count(*) from (
SELECT * FROM TABLE1 t
JOIN TABLE2 e
USING (EVENT_ID)
) s1
WHERE
s1.SOURCE_ID = 1;
唯一的区别是t1.SOURCE_ID = (some other number)
. 我想将这些转换为一个查询,该查询仅从子查询中选择,SOURCE_ID
对结果中的每一列使用不同的列,如下所示:
+----------------+----------------+----------------+
| source_1_count | source_2_count | source_3_count | ... so on
+----------------+----------------+----------------+
我试图避免使用多个查询,因为连接在一个非常大的表上并且需要一些时间,所以我宁愿做一次并多次查询结果。
这是在一个雪花数据仓库上,我认为它使用类似于 PostgreSQL 的东西(我对 SQL 也很陌生,所以也可以随意提出一个完全不同的解决方案)。