- 浏览: 95311 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (139)
- oracle基础 (27)
- oracle sql编程及优化 (14)
- ELK (4)
- java (11)
- java设计模式 (0)
- 互联网知识 (6)
- 安装MongoDB (1)
- MongoDB (0)
- spark (1)
- scala (1)
- spring boot (3)
- spring cloud (8)
- redis (6)
- virtualbox (3)
- docker (7)
- rabbitmq (0)
- rocketmq (2)
- k8s (8)
- ubuntu (11)
- centos (3)
- mysql (4)
- nginx (7)
- tomcat (5)
- postman (1)
- other (10)
最新评论
-
lihao312:
insert all功能好强大哦 之前都没有用到过
oracle 多表插入 insert all 用法(即列转行)
建表语句:
create table ORDERS(CUSTOMER_ID NUMBER,SUM_ORDERS NUMBER); create table small_customers(CUSTOMER_ID NUMBER,SUM_ORDERS NUMBER); create table medium_customers(CUSTOMER_ID NUMBER,SUM_ORDERS NUMBER); create table large_customers(CUSTOMER_ID NUMBER,SUM_ORDERS NUMBER); create table order_sums(CUSTOMER_ID NUMBER,SUM_ORDERS NUMBER);
insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (1000, 10); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (1001, 20); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (1002, 30); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (800, 5); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (900, 6); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (700, 7); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (10000, 100); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (20000, 200); insert into ORDERS (CUSTOMER_ID, SUM_ORDERS) values (30000, 300);
insert into ORDER_SUMS (CUSTOMER_ID, SMALL_SUM_ORDERS, MEDIUM_SUM_ORDERS, LARGE_SUM_ORDERS) values (1000, 10, 20, 30); insert into ORDER_SUMS (CUSTOMER_ID, SMALL_SUM_ORDERS, MEDIUM_SUM_ORDERS, LARGE_SUM_ORDERS) values (900, 1, 2, 3); insert into ORDER_SUMS (CUSTOMER_ID, SMALL_SUM_ORDERS, MEDIUM_SUM_ORDERS, LARGE_SUM_ORDERS) values (10000, 100, 200, 300);
1.插入到多张表用法
insert all when customer_id < 1000 then into small_customers when customer_id >= 1000 and customer_id < 10000 then into medium_customers else into large_customers select customer_id, sum_orders from orders;
2.多列转一行用法
insert all into small_customers(customer_id, sum_orders) values(customer_id, small_sum_orders) into small_customers(customer_id, sum_orders) values(customer_id, medium_sum_orders) into small_customers(customer_id, sum_orders) values(customer_id, large_sum_orders) select customer_id, small_sum_orders, medium_sum_orders, large_sum_orders from order_sums;
发表评论
文章已被作者锁定,不允许评论。
-
oracle rman
2014-06-30 15:14 4781. 检查数据库模式: sqlplus /nolog ... -
Oracle Scheduler Chain 的用法
2014-06-15 22:10 0Oracle CHAIN,也就是链,是将一串需要完成的作业连 ... -
oracle 热备脚本
2014-06-08 22:59 0oracle 热备脚本 -
表空间传输
2014-05-25 23:27 2059http://www.linuxidc.com/Linux ... -
sqlplus 基本命令
2014-05-21 18:01 602SQL> show all --查看所有68个系统变 ... -
undo 文件丢失的数据库恢复
2014-05-19 14:55 11801.连接数据库 sqlplus /nolog con ... -
oracle日志文件损坏时,用隐含参数启动:_allow_resetlogs_corruption
2014-05-17 10:06 1494Oracle隐含参数:_allow_resetlogs_c ... -
Oracle TYPE OBJECT 用法
2012-11-05 15:46 0Oracle TYPE OBJECT 用法 -
如何降低Oracle表的高水位
2012-11-05 15:39 0如何降低Oracle表的高水位 -
Oracle外部表
2012-11-06 17:10 602转载:Oracle外部表4 Oracle外 ... -
ORACLE删除重复记录方法
2012-11-05 15:32 0转载:ORACLE删除重复记录方法 -
oracle table()函数用法
2012-11-05 15:31 0转载:oracle table()函数用法 -
关于Oracle建物化视图的总结
2012-11-05 15:31 0转载:关于Oracle建物化视图的总结 -
全面学习ORACLE Scheduler特性
2012-11-05 15:58 614转载:全面学习ORACLE Scheduler特性 -
WITH子句与未公开HINT MATERIALIZE联合使用, 取代临时表
2012-11-05 15:11 0转载:WITH子句与未公开HINT MATERIALIZE联 ... -
如何找回Oracle数据库初始化密码
2012-11-05 15:03 0转载:如何找回Oracle数据库初始化密码 -
ORACLE EXP和IMP浅谈
2012-11-05 15:03 0转载:ORACLE EXP和IMP浅谈 oracl ... -
Oracle SQL Loader
2012-11-05 14:55 0引用:Oracle SQL Loader -
oracle flashback介绍
2012-11-05 16:01 714引用:Flashback Table之RECYCLEBIN ... -
oracle v$视图
2012-10-26 14:16 0v$locked_object 查看锁定的会话 ...
相关推荐
Oracle 列转行问题解决方案 Oracle 数据库中,列转行问题是一个非常传统的话题。在这个问题中,我们需要将行数据转换成不同的列表示,或者将不同的列数据写到同一列的不同行上。这种问题在实际应用中非常常见,如将...
本文将详细介绍如何在Oracle中实现行转列(即行列转换的一种)以及列转行的操作,分别通过使用`decode`函数和`insert...select`语句来实现。 ### 一、使用`decode`函数进行“行转列” #### 1. **背景与需求** 在...
接下来使用`UNION ALL`将多列数据合并成单一列: - **实现列转行**: ```sql -- 示例代码 SELECT StuNo, '语文' AS Subject, Chinese AS Score FROM [StudentScores] UNION ALL SELECT StuNo, '数学' AS ...
- **表结构**:在本示例中,我们将使用一个名为 `fzq` 的表,该表包含以下四列:`ID`、`NAME`、`KECHENG`(课程)、`CHENGJI`(成绩)。 - **目标**:我们的目标是将原始数据中的课程名称转换为列名,并将对应的成绩...
**使用方法:** - 在SQL语句中使用`:variable`的形式代替具体的值,例如:`SELECT * FROM table WHERE id = :id`。 - 在Java等编程语言中,通过PreparedStatement等API传递参数。 #### Sequence **概念及作用:** ...
- 多表插入语句:同时向多个表插入数据。 - 用其他表中的值更新:使用UPDATE结合JOIN。 - 合并记录:通过DELETE和INSERT实现。 - 删除违反参照完整性的记录:使用ON DELETE CASCADE。 - 删除名称重复的记录:...
│ 列转行.sql │ 固定行列报表.sql │ 复杂交叉表.sql │ 复杂交叉表1.sql │ 多栏显示.sql │ 日期+星期+时间.sql │ 格式化报表.sql │ 横转竖-1.sql │ 横转竖-字段名.sql │ 横转竖-生成字段名.sql │ 横转竖....
│ │ └─其他 │ 交叉表--复杂名次.sql │ 交叉表-优先级处理.sql │ 交叉表分析.sql │ 分级汇总.sql │ 分组交叉表.sql │ 列转行.sql │ 固定行列报表.sql │ 复杂交叉...