我正在寻找一种“连接”两个查询结果的方法。
预期结果是一行包含两个聚合get
和SumValueA
。
这两个查询中的每一个仅返回一行。
SumValueB
将不起作用,因为两个表都没有相同的数据。
我正在使用SQL Server 2017。
查询1:
JOIN
查询2:
SELECT Sum(ValueA) AS SumValueA
FROM dbo.TableA
答案 0 :(得分:2)
SELECT (SELECT Sum(ValueA) FROM dbo.TableA) AS SumValueA,
(SELECT Sum(ValueB) FROM dbo.TableB) AS SumValueB
答案 1 :(得分:1)
您可以使用cross join
。
SELECT sumvalueA, sumvalueB
FROM (SELECT Sum(ValueA) AS SumValueA
FROM dbo.TableA) a
CROSS JOIN (SELECT Sum(ValueB) AS SumValueB
FROM dbo.TableB)
交叉联接显示子查询a中的所有行以及子查询b中的所有行。这将产生笛卡尔积。