超过2列以上的分区

时间:2016-01-19 20:29:06

标签: sql oracle

我是pl / sql的新手,我需要你的帮助 我想对table1.col1的分区进行总结 但我不知道怎么做。

我的简单查询如下:

SELECT TABLE3.COL1, TABLE2.COL1,  TABLE1.COL1 
FROM TABLE1, TABLE2, TABLE3
WHERE TABLE1.COL1 = TABLE2.COL1
AND TABLE3.COL1 = TABLE2.COL1;

结果:

1  1    100
1  2    100
1  2    200
1  2    100
2  4    200

我希望查询返回:

1  1    100
1  2    400
2  4    200

你能帮我吗?

1 个答案:

答案 0 :(得分:1)

我不明白你为什么需要存储过程或窗口函数。这看起来像一个基本的group by语句:

SELECT table3.col1, table2.col1, sum(table1.col1)
FROM TABLE1
   JOIN table2 ON table1.col1 = table2.col1
   JOIN table3 ON table3.col1 = table2.col1
GROUP BY table3.col1, table2.col1

请注意,我使用适当的显式WHERE运算符替换了JOIN子句中的旧式隐式联接