批量新增
创建新表并复制原有表的结构和数据
create table new_table as select * from old_table;
复制一张表的数据到另一张表(表结构相同)
INSERT into table1 select * from table2;
复制一张表的某些字段到另一张表(表结构相同)
INSERT into table1(表中字段1,表中字段2) select 表中字段1,表中字段2 from table2;
将SELECT语句返回值插入至表
INSERT INTO TABLENAME VALUES (..., (select ...));
INSERT INTO 表名1(`字段1`, `字段2`) VALUES (字段1的值, (select 查询字段 from 表名2 where 条件));
批量多行
INSERT INTO 表名(字段1, 字段2) VALUES
(字段1数据, 字段2数据),
(字段1数据, 字段2数据),
(字段1数据, 字段2数据);
INSERT INTO 表名1(`字段1`, `字段2`)
VALUES
(字段1的值, (select 查询字段 from 表名2 where 条件)),
(字段1的值, (select 查询字段 from 表名3 where 条件)),
(字段1的值, (select 查询字段 from 表名4 where 条件));
批量更新
通过merge语句更新
merge into 更新的表名 t1
using 子查询的sql t2
when matched then
update set t1.id=t2.id