INSERT SELECT(从另一个表中插入数据)

这是使用 SELECT 语句从另一个表插入数据的基本方法。

INSERT INTO `tableA` (`field_one`, `field_two`) 
   SELECT `tableB`.`field_one`, `tableB`.`field_two` 
   FROM `tableB` 
   WHERE `tableB`.clmn <> 'someValue'
   ORDER BY `tableB`.`sorting_clmn`;

你可以 SELECT * FROM,但是 tableAtableB 必须有匹配的列数和相应的数据类型。

具有 AUTO_INCREMENT 的列被视为 INSERT 中的 VALUES 子句。

这种语法可以很容易地使用来自其他表的数据填充(临时)表,当在插入数据上过滤数据时更是如此。