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;
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐