insert语句

1.单表单行INSERT

INSERT INTO table[(column1,column2,...)] VALUE(value1,value2,...)

 

2.无条件多表INSERT

INSERT[ALL][condition_insert_clause]

[insert_into_clause values_clause] (subquery)

 

例子:

insert all
into e_sal(empno,sal) values(empno,sal)
into e_job(no,job) values(empno,job)
select empno,sal,job from emp
/

3.有条件的多表INSERT

INSERT [ALL | FIRST]

WHEN condition THEN into_clause values_clause

[WHEN condition THEN] into_clause values_clause]

......

[ELSE] [insert_into_clause values_clause] 

Subquery;

 

例子:

insert all
when salary<=1000 then into sal1000 values(emp_id,hire_date,salary)
when salary<=2000 then into sal2000 values(emp_id,hire_date,salary)
else
into sal_else values(emp_id,hire_date,salary)
select empno emp_id,hiredate hire_date,sal salary from emp
/

insert first
when salary<=1000 then into sal1000 values(emp_id,hire_date,salary)
when salary<=2000 then into sal2000 values(emp_id,hire_date,salary)
else
into sal_else values(emp_id,hire_date,salary)
select empno emp_id,hiredate hire_date,sal salary from emp
/

当使用all时,从上到下检查每个条件,满足就执行后面的into。

当使用first时,从上到下,一旦满足就执行后面的into,之后终止判断,开始下个row的检查。

 

4.pivoting insert,实际上就是无条件的insert all

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值