在
mysql
从多个表中组合字段然后插入到一个新表中,通过一条sql
语句实现。具体情形是:从其他表中查询到结果进行insert
。
-- 指定字段插入
INSERT INTO 表1(字段1,字段2) SELECT 字段1,字段2 FROM 表2
-- 全部插入(注意两张表结构的数据类型以及字段顺序)
INSERT INTO 表1 SELECT * FROM 表2
-- 注意在mysql中派生出来的新表必须设置别名
-- 插入结果来接多表关联查询
INSERT INTO 表1(字段1,字段2) SELECT * FROM(SELECT 字段1,字段2 FROM 表2 JOIN 表3) AS 派生新表别名
-- 同理全部匹配
INSERT INTO 表1 SELECT * FROM (SELECT * FROM 表2 JOIN 表3) AS 派生新表别名