[Oracle,2018-03-02] oracle一次插入多条记录

insert into student(name,age) 
select '张三','22' from dual         
union all                                 
select '李四','23' from dual         
union all                                 
select '王五','21' from dual 

在oracle中不能像mysql一样使用 values(a1,b1...),(a2,b2...),不然会出现 ‘[Err] ORA-00933: SQL 命令未正确结束’,其实我们可以利用oracle中一个特殊的表 dual 来实现。

首先,看 select '1' from dual 的结果:
其次,看
select '1' from dual 
union 
select '2' from dual 
的结果:
那么,
insert into 表名 (字段1) 
     select '1' from dual 
     union 
     select '2' from dual
的结果?没错,插入了两条记录。
 
原文地址:https://www.cnblogs.com/shijt/p/8491543.html