SQL 的 INSERT INTO SELECT 操作

  • Post author:
  • Post category:其他




1.INSERT INTO VALUE 和 INSERT INTO SELECT 操作的区别

插入多条数据的时候执行会执行多次 INSERT INTO VALUE效率较低,

使用 INSERT INTO SELECT 先查询要添加的数据再将所有数据进行拼接 在执行插入,提高效率



2. INSERT INTO SELECT 语句

通过复制一张表的数据到另一张已经存在的表里

--语句形式 1:
INSERT INTO  table1  (字段1,字段2, ...) SELECT1,2 FROM table2
--语句形式 2:(需要 table1 和 table2 的字段完全相同)
INSERT INTO table1 SELECT * FROM table2
--语句形式 3:
INSERT INTO table1 (字段1,字段2, ...) 
SELECT '值1','值2' ... 
UNION ALL SELECT '值1','值2' ... ;



3.兼容oracle 通过 虚拟表 dual

--语句形式: (UNION ALL 允许值重复)
INSERT INTO table1 (字段1,字段2,...)
SELECT '值1','值2'... FROM dual
UNION ALL SELECT '值1','值2' ... From dual;



版权声明:本文为qq_41230572原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。