2024年6月2日发(作者:)

mysql insert into select用法

mysql insert into select用法

一、Mysql insert into select用法

1、定义

Mysql insert into select是MySQL数据库管理系统中一种用于将查询结果插入到表

中的数据操作语句。它的功能是从一个表(或多个表)中查询出数据,然后将查询

的结果插入到另一个表中。

2、基本语法

insert into select语句的基本语法如下:

INSERT INTO target_table [(column1, column2, …)]

SELECT column1, column2, …

FROM source_table

WHERE condition;

参数说明:

target_table:要插入的目标表

column1,column2:要插入的列

source_table:要查找的源表

condition:查找的条件

3、示例

下面以实例来说明Mysql insert into select使用方法:

假设有一张叫t_students的表, 数据如下:

id name

1 张三

2 李四

3 王五

我们再建立一张叫t_socker的表, 现在想将t_students里面所有学生信息插入

到t_socker表里面, 则SQL语句如下:

INSERT INTO t_socker (id,name)

SELECT id,name

FROM t_students;

插入之后t_socker表数据如下:

id name

1 张三

2 李四

3 王五

二、Mysql insert into select的注意事项

1、在MySQL的insert into select中, 目标表和源表的字段数量要相等,并且类型

要匹配。

2、可以指定插入顺序, 当源表和目标表的顺序不同时, 可以用insert into select

的语法指定插入的字段顺序。

3、如果不指定条件, 则MySQL insert into select语句会将整个源表全部插入到目

标表。

4、PHP中mysql_affected_rows()可用于统计insert into select影响操作的行数。

5、MySQL insert into select 不支持ORDER BY语句, 如果要排序, 可以改用

ORDER BY在Select之后或者使用子查询。