MySQL-mysql中SELECT INTO FROM与INSERT INTO SELECT 有何区别?

WP主题讨论 WP主题讨论 主题:1013 回复:2239

MySQL-mysql中SELECT INTO FROM与INSERT INTO SELECT 有何区别?

甜柠檬 发布于 2017-01-21 字数 232 浏览 985 回复 1

需求是从一个表中把数据导出到另一个表中,方式有2种:
Insert into Table2(field1,field2,...) select value1,value2,... from Table1
SELECT vale1, value2 into Table2 from Table1
这两种方式的区别在哪里?性能有何差异?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(1

想挽留 2017-07-03 1 楼

在关之前回答你一下吧,这个应该是属于基本问题,Google、百度一大堆:

1.INSERT INTO SELECT语句

Insert into Table2(field1,field2,...) select value1,value2,... from Table1

要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。

2.SELECT INTO FROM语句

语句形式为:SELECT vale1, value2 into Table2 from Table1

要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。

对于性能来讲应该都差不多,具体的没有测试过。