sql - 插入并选择查询.... 聚合多行数据
问题描述
我在 oracle 中有一个特定的要求,我在 table1 中有以下数据。我需要对表 1 的第 3 列中具有相同编号和日期的值求和,并插入表 2 中所示的数据。
有没有办法可以在查询中使用 insert 和 select 来实现这个要求?
表格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
解决方案
这是示例。
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;
请让我知道这是否适合您
推荐阅读
- java - 尝试通过 JSTL 表单标签提交表单时收到错误“bean 类的无效属性 'xxx'”
- python - 每次元素更改时如何获取新列表(该元素是元组列表中每个元组的某个索引)
- google-cloud-datastore - 是否应该编写实体以确保不重用自动分配的 ID?
- javascript - 渲染后如何根据状态切换子组件?
- python - 属性错误:“模块‘numpy.random’没有属性‘uniform’”
- mariadb - 创建用户并撤销他们对 MariaDB 上特定数据库的访问权限
- ios - 我想通过我的 BLE 设备连接到 iPhone 的 BLE
- ios - 将应用程序上传到 iTunes 连接时如何解决 Xcode 验证错误?
- sql - 追加查询不追加缺失项
- python - 简单的神经网络误差先减小后增大