SQL:如何从不同的表中求和两个值

Uch*_*lah 26 sql t-sql sql-server dashboard sum

好的.

我已经在工作中投入了一个项目,虽然我有一些SQL技能,但它们非常生疏.

其中一个工作场景给我留下了一些表格,其中包含了我需要总结的值.它们也没有链接,但是所有表中的顺序都是相同的.

基本上,我想采取这两个表:

CASH TABLE  
London  540
France  240
Belgium 340

CHEQUE TABLE
London  780
France  490
Belgium 230
Run Code Online (Sandbox Code Playgroud)

要获得这样的输出以输入图形应用程序:

London  1320
France  730
Belgium 570
Run Code Online (Sandbox Code Playgroud)

请帮忙.

Jon*_*ise 52

select region,sum(number) total
from
(
    select region,number
    from cash_table
    union all
    select region,number
    from cheque_table
) t
group by region
Run Code Online (Sandbox Code Playgroud)

  • @fungusanthrax `UNION` 本身将删除不不同(重复)的行。`UNION ALL` 将保留联合中的所有行,以便总和准确 (3认同)

vec*_*tor 18

SELECT (SELECT SUM(London) FROM CASH) + (SELECT SUM(London) FROM CHEQUE) as result
Run Code Online (Sandbox Code Playgroud)

'等等等等.

  • “伦敦”是表中的条目而不是列 (2认同)
  • 这样,即使其中一个SUM都为NULL,整个“结果”也将为null,因此不幸的是,这是最简单的方法,但也是最不值得信赖的方法。 (2认同)