MySQL将查询结果插入到数据表中
2017-07-07 09:43
323 查看
INSERT语句还可以将SELECT语句查询出来的数据插入到另一个表中,即可快速地从一个或多个表中向一个表中插入多个行。这样,可以方便不同表之间进行数据交换。
基本的语法格式如下:
表名1:表示记录插入到哪个表中。
字段列表1:表示为哪些字段赋值。
字段列表2:表示从表中查询出哪些字段的数据。
表名2:表示记录是从哪个表中查询出来的。
条件表达式:表示设置SELECT语句的查询条件。
将“表名2”中查询出来的记录插入到“表名1”中以后,“表名2”中仍然保存着原来的记录。
使用这种方法时,必须保证“字段列表1”和“字段列表2”中的字段个数是一样的,同时,也必须保证每个对应的字段的数据类型是一样的。如果数据类型不一样,数据库系统会报错。然后,阻止INSERT语句向下执行。
从stu表中查询所有的记录,并将其插入到student表中。
1. 创建一个名为stu的数据表,其表结构与student表结构相同。SQL语句如下:
2. 向stu数据表中添加两条记录。INSERT语句如下:
3. 将stu数据表中所有的记录插入到student数据表中。SQL语句如下:
这里的id字段为自增的主键,在插入的时候要保证该字段值的唯一性。如果不能确定,可以插入的时候忽略该字段,只插入其它字段的值。
这个例子中使用的stu数据表和student数据表的定义相同,事实上,MySQL不关心SELECT返回的列名,它根据列的位置进行插入,SELECT的第1列对应待插入表的第1列,第2列对应待插入表的第2列,等等。即使不同结果的表之间也可以方便的转移数据。
基本的语法格式如下:
INSERT INTO 表名1(字段列表1) SELECT 字段列表2 FROM 表名2 WHERE 条件表达式;
表名1:表示记录插入到哪个表中。
字段列表1:表示为哪些字段赋值。
字段列表2:表示从表中查询出哪些字段的数据。
表名2:表示记录是从哪个表中查询出来的。
条件表达式:表示设置SELECT语句的查询条件。
将“表名2”中查询出来的记录插入到“表名1”中以后,“表名2”中仍然保存着原来的记录。
提示:
使用这种方法时,必须保证“字段列表1”和“字段列表2”中的字段个数是一样的,同时,也必须保证每个对应的字段的数据类型是一样的。如果数据类型不一样,数据库系统会报错。然后,阻止INSERT语句向下执行。
实例
从stu表中查询所有的记录,并将其插入到student表中。1. 创建一个名为stu的数据表,其表结构与student表结构相同。SQL语句如下:
CREATE TABLE stu( id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY, xuesheng VARCHAR(10) NOT NULL, yuwen INT(4), shuxue INT(4), yingyu INT(4));
2. 向stu数据表中添加两条记录。INSERT语句如下:
mysql>INSERT INTO stu(id,xuesheng,yuwen,shuxue,yingyu) VALUES(1001,'one',79,66,90), (1002,'two',62,68,73);
3. 将stu数据表中所有的记录插入到student数据表中。SQL语句如下:
mysql>INSERT INTO student(id,xuesheng,yuwen,shuxue,yingyu) SELECT id,xuesheng,yuwen,shuxue,yingyu FROM stu;
这里的id字段为自增的主键,在插入的时候要保证该字段值的唯一性。如果不能确定,可以插入的时候忽略该字段,只插入其它字段的值。
提示
这个例子中使用的stu数据表和student数据表的定义相同,事实上,MySQL不关心SELECT返回的列名,它根据列的位置进行插入,SELECT的第1列对应待插入表的第1列,第2列对应待插入表的第2列,等等。即使不同结果的表之间也可以方便的转移数据。
相关文章推荐
- MySQL将查询结果插入到数据表中
- MySQL将查询结果插入到数据表中
- MySQL如何将select子查询结果横向拼接后插入数据表中
- MySQL将查询结果插入到数据表中
- MySQL将查询结果插入到数据表中
- MySQL将查询结果插入到数据表中
- MySQL如何将select子查询结果横向拼接后插入数据表中
- MySql insert:当通过条件查询结果存在该条数据则不插入,否则执行insert
- MySQL 将查询结果,加入一个自定义固定值字段,插入另外一张表
- MySQL 数据库操作,将查询结果插入新表
- mysql将查询结果插入新表
- mysql学习- 将查询结果加上其他键值插入到表中
- 【Richie Zhu】J2EE struts框架查询,删除和插入数据及显示结果到表格
- MySql如何插入和查询二进制数据
- awt可视化界面上传数据到mysql,jsp通过jdbc方式查询数据库,并将结果打印在网页上
- mysql 将查询结果插入一张表
- mysql语句从一个表中查询出数据,再插入到另一张表中(表字段不一样)
- MySQL 5.6学习笔记(查询数据、插入、更新、删除数据)
- 记录一下MYSQL把两表查询结果插入新表 - 4ngel's blog - 京华志
- mysql创建临时表,将查询结果插入已有表中