基本的语法格式如下:
INSERT INTO 表名1(字段列表1) SELECT 字段列表2 FROM 表名2 WHERE 条件表达式;
- 表名1:表示记录插入到哪个表中。
- 字段列表1:表示为哪些字段赋值。
- 字段列表2:表示从表中查询出哪些字段的数据。
- 表名2:表示记录是从哪个表中查询出来的。
- 条件表达式:表示设置SELECT语句的查询条件。
将“表名2”中查询出来的记录插入到“表名1”中以后,“表名2”中仍然保存着原来的记录。
实例1:将stu数据表中所有的记录插入到student数据表中。SQL语句如下:
mysql>INSERT INTO student(id,xuesheng,yuwen,shuxue,yingyu) SELECT id,xuesheng,yuwen,shuxue,yingyu FROM stu;
实例2:
INSERT into t_sso_id (account_id,sso_account_id,user_name,create_time)
SELECT account_id as account_id ,account_id as sso_account_id,user_name,create_time from t_sea_account