sql insert into select 用法
大约 2 分钟...
一张已存在的表,插入的新数据来源别的表时,可以使用 insert into select
语法
语法
INSERT INTO 目标表(列名1, 列名2, 列名3...)
SELECT (列名1, 列名2, 列名3...) FROM 来源表 WHERE 条件;
如果两表的结构完全相同,可以省略列名,简化如下:
INSERT INTO 目标表 SELECT * FROM 来源表 WHERE 条件;
举个 🌰
复制一张表并复制表数据
-- 新建一个和 t_user 结构一样的表 t_user_copy
CREATE TABLE `t_user_copy` LIKE `t_user`;
INSERT INTO `t_user_copy` SELECT * FROM `t_user`;
从另一张表的部分字段复制数据
INSERT INTO `t_user`(username,gender,height)
SELECT (sname as username, sex as gender, height)
FROM `t_student`
WHERE height>160
LIMIT 100;