如何汇总外表中不同行的相同列值?

时间:2018-12-21 10:51:10

标签: sql oracle oracle11g

我有一个名为table1(table1_id,table1_exp)的表,其中table1_exp是与table2(table2_exp,table2_num)链接的外键 我想对同一table1_id的所有table2_num求和,然后将其显示为一行。

2 个答案:

答案 0 :(得分:1)

据我了解,这些是您的表格:

t1 (table1_id , 
    table_1_exp)
t2 (table2_exp references table_1_exp,
    table2_num)

如果是这样,

select t1.table1_id, 
       sum(t2.table2_num) sum_num
from t2 join t1 on t2.table2_exp = t1.table1_exp
group by t1.table1_id

可能是您想要的。

但是,我不明白“显示为一行”的含义。每个TABLE1_ID的总和将在一行中。示例数据和预期的输出将帮助我们为您提供帮助。

答案 1 :(得分:0)

使用分组依据:

SELECT TABLE1_ID, SUM(T1.table1_exp) FROM TABLE1 T1 GROUP BY T1.TABLE1_ID