在MySQL中,INSERT INTO SELECT语句用于将数据从一个表插入到另一个表中。
语法如下:
INSERT INTO 表1 (列1, 列2, 列3, …) SELECT 列1, 列2, 列3, … FROM 表2 WHERE 条件;
其中,表1是要插入数据的目标表,列1, 列2, 列3是目标表中的列名,表2是要从中选取数据的源表,列1, 列2, 列3是源表中的列名,WHERE条件是可选的,用于限制要插入的数据。
示例:
假设有两个表:employees和new_employees。要将employees表中的所有数据插入到new_employees表中,可以使用如下语句:
INSERT INTO new_employees (employee_id, first_name, last_name, hire_date) SELECT employee_id, first_name, last_name, hire_date FROM employees;
这个语句将从employees表中选取employee_id, first_name, last_name和hire_date列的所有数据,并插入到new_employees表中的相应列中。
注意:在使用INSERT INTO SELECT语句时,目标表的结构必须与源表的结构一致,否则会报错。