我在oracle中有一个特殊的要求,在表1中有以下数据。我需要对table1的column3中具有相同的No和日期的值求和,并按table2所示插入数据。
有没有一种方法可以在查询中使用插入和选择来实现此要求?
表1
1 | 5/7/2013 | 10
1 | 5/7/2013 | 30
1 | 5/7/2013 | 50
1 | 6/28/2015 | 5
1 | 6/28/2015 | 70
1 | 6/28/2015 | 10
2 | 1/9/2016 | 60
2 | 1/9/2016 | 70
2 | 1/9/2016 | 80
表2
1 | 5/7/2013 | 90
1 | 6/28/2015 | 85
2 | 1/9/2016 | 210
答案 0 :(得分:0)
这里是例子。
create table c_table (
c1 number,
c2 DATE,
c3 number);
create table c_table_2 (
b1 number,
b2 DATE,
b3 number
);
insert into c_table values (1, to_date('5/7/2013', 'MM/dd/YYYY'), 10);
insert into c_table values (1, to_date('5/7/2013', 'MM/dd/YYYY'), 50);
insert into c_table values (1, to_date('6/28/2015', 'MM/dd/YYYY'), 5);
insert into c_table values (1, to_date('6/28/2015', 'MM/dd/YYYY'), 70);
insert into c_table values (1, to_date('6/28/2015', 'MM/dd/YYYY'), 10);
insert into c_table values (2, to_date('1/9/2016', 'MM/dd/YYYY'), 60);
insert into c_table values (2, to_date('1/9/2016', 'MM/dd/YYYY'), 70);
insert into c_table values (2, to_date('1/9/2016', 'MM/dd/YYYY'), 80);
commit;
insert into c_table_2 select c1, c2, sum(c3) from c_table group by c1, c2;
commit;
select * from c_table_2;
请让我知道这是否适合您