连接来自两个单独表的两个聚合

时间:2019-03-11 23:35:47

标签: sql sql-server tsql

我正在寻找一种“连接”两个查询结果的方法。 预期结果是一行包含两个聚合getSumValueA

这两个查询中的每一个仅返回一行。 SumValueB将不起作用,因为两个表都没有相同的数据。

我正在使用SQL Server 2017。

查询1:

JOIN

查询2:

SELECT Sum(ValueA) AS SumValueA
FROM dbo.TableA

2 个答案:

答案 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中的所有行。这将产生笛卡尔积。