Oracle SQL:从另一个表添加sum以查询结果

时间:2011-08-12 20:52:47

标签: sql oracle join

我有两个表,其中一个表TABLE2有一个TABLE1_IDs列,因此TABLE2和TABLE1行之间存在多对一关系。表2具有列PRICE,其是表示美元金额的数字。我有一个获取TABLE1的某些行的查询,但我希望将所有相应的TABLE2行的PRICE值的总和作为查询结果中的附加列。

如何在Oracle中完成此任务?

2 个答案:

答案 0 :(得分:4)

轻松 - 加入,总结。

select t1.table1_id
,      sum(t2.price) total_price
from   table1 t1
,      table2 t2
where  t1.table1_id = t2.table1_id
group  by t1.table1_id;

答案 1 :(得分:3)

我相信你想要这样的东西:

SELECT A.Id, SUM(B.Price) TotalPrice
FROM (  SELECT *
        FROM Table1
        WHERE Something) A
LEFT JOIN Table2 B
ON A.Id = B.Table1_id
GROUP BY A.Id