1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 数据库 - 正文

君子好学,自强不息!

深入研究Oracle旋转insert语句

2022-11-19 | 数据库 | admin | 533°c
A+ A-

Oracle旋转insert语句可能对于很多刚接触Oracle的新人来说还比较陌生,下面就为您详细介绍Oracle旋转insert语句的实现方法,供您参考。

Oracle多表insert语句中还可以实现旋转Oracleinsert语句.即把表原来每行数据不同列值转换为另一种表的不同行值. 如: create table 销售表( id number primary key, JAN number, FEB number, MAR number, APR number )

SQL> insert into 销售表 values(1,100,200,300,400);

1 row created.

SQL> insert into 销售表 values(2,110,120,130,140);

1 row created.

SQL> select * from 销售表;

ID JAN FEB MAR APR ———- ———- ———- ———- ———- 1 100 200 300 400 2 110 120 130 140

create table 月销售统计表 (编号 numeric, 月份 nvarchar2(10), 月平均销售额 numeric, 月销售额 numeric );

旋转insert语句: SQL> insert all 2 into 月销售统计表 values(1,’一月’,avg1,sum1) 3 into 月销售统计表 values(2,’二月’,avg2,sum2) 4 into 月销售统计表 values(3,’三月’,avg3,sum3) 5 into 月销售统计表 values(4,’四月’,avg4,sum4) 6 select avg(JAN) avg1,sum(JAN) sum1, 7 avg(FEB) avg2,sum(FEB) sum2, 8 avg(MAR) avg3,sum(MAR) sum3, 9 avg(APR) avg4,sum(APR) sum4 10 from 销售表;

4 rows created.

SQL> select * from 月销售统计表;

编号 月份 月平均销售额 月销售额 ———- ——————– ———— ———- 1 一月 105 210 2 二月 160 320 3 三月 215 430 4 四月 270 540 源数据如下: ID JAN FEB MAR APR ———- ———- ———- ———- ———- 1 100 200 300 400 2 110 120 130 140

本文来源:1818IP

本文地址:https://www.1818ip.com/post/10165.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。