关于insert语句中嵌套查询的使用

使用场景

有时候我们可能需要进行一些数据的迁移,又或者从正式环境中拿出部分数据作为测试数据。我们就会通过将一个存在大量数据的表中的部分数据查询出来并插入到目标数据库的数据表中。

方法

普通的简单insert语句

insert into table_name (attr1, attr2...) values (value1, value2...)

但是如果我们在后面嵌套了select语句作为values后面的值,那么将不需要再写values关键字了,如下:

insert into table_name1 (attr1, attr2...) select value1, value2 from table_name2

需要注意的是:后面子查询的字段类型一定要和前面插入字段的类型一致,否则会语法错误。

你可能感兴趣的:(数据库,sql,mysql)