Mr.CHENs

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

oracle多表插入模式:

insert all|first 

when ...

then  into ...

else into...

select ...

from ...

group by...;

 

all与first的区别:

all是指,当检测到第一个条件成立,如果满足第二个条件会依然进行匹配。

也就是说,当满足第一个条件的数据被匹配到,则依然可以被第二个条件匹配。

 

first是指,当检查到第一个条件成立,则不继续检查其它条件是否成立。

就是说,当满足第一个条件的数据被匹配到,则不再被第二个条件匹配

例如:

a b

a c

当第一个条件匹配a ,第二个条件匹配b 如果用first,则第二个条件不能匹配到任何数据。

如果用all,则第二个条件可以匹配到第一条数据。

 

通俗的讲:first就是你死我活,all就是你中有我,我中有你。

posted on 2016-09-12 15:53  Mr.CHENs  阅读(323)  评论(0编辑  收藏  举报