1

我有 2 个表,我正在尝试组合它们以便group by对它们执行功能。我处理这个问题的原因是这两个表的组合大于10 GB数据库限制SQL Server Express(每个表约为 9 GB)。第二张表只是第一张表的延续。它看起来像这样:

  CustId        Sale
    001         4.25
    002        15.24
    003         8.78
    004       122.99
    005        44.80
    ...         ...

如果是一张桌子,我会使用这样的东西:

select CustId, sum(Sale) sumSale
from table1
group by CustId

有没有办法纵向组合而不是横向组合?

4

2 回答 2

1

您可以使用union

select CustId, sum(Sale) sumSale
from (
    select CustId, Sale
    from table1
    union all
    select CustId, Sale
    from table2)
group by CustId
于 2012-09-11T15:57:05.977 回答
1

在我看来,工会在这里会有所帮助:

Select custId, sum(sale)
  from (select custid, sale
          from table1
         union 
        select custid, sale
          from table2)
 group by custId
于 2012-09-11T15:58:56.943 回答