对具有相同名称的列的表进行聚合SQL查询

时间:2012-10-19 15:32:04

标签: sql aggregate-functions

我有两个表,都有一个名为transaction_amnt的列。有没有办法可以编写一个SQL查询来返回两个表中所有事务金额的总和?我试过了

select sum(transaction_amnt) from table1 natural join table2;

但是,我认为join并不是我想要的。

2 个答案:

答案 0 :(得分:1)

我猜union all最适合您的问题,因为它不会删除记录中的重复项。

SELECT SUM(x.transaction_amnt) totalAmount
FROM
(
    SELECT transaction_amnt from table1
    UNION ALL
    SELECT transaction_amnt from table2
) x

答案 1 :(得分:0)

由于你没有向我们展示你的桌子定义,我不清楚你真正想要什么,但这可能是我认为你正在寻找的:

select sum(transaction_amnt) 
from (
  select transaction_amnt
  from table1 
  union 
  select transaction_amnt
  from table2
) t