mysql中insert语句的五种用法


前言

insert语句是标准sql中的语法,是插入数据的意思。在实际应用中,它也演变了很多种用法来实现特殊的功能,下面介绍在mysql数据库中insert语句的五种用法。

一、values参数后单行插入

语法:

insert into tableName (colunm1,colunm2,...) value(value1,value2,...);

如果插入多条数据,需要写多条sql。

insert into a(id,name,type) values (1,A1,T1);
insert into a(id,name,type) values (2,A2,T2);

二、values参数后多行插入

语法:

insert into tableName(colunm1,colunm2,..) values(value1,value2...),(value1,value2...);

多条数据1条sql即可,相较于方法1效率更高。

insert into a(id,name,type) values (1,A1,T1),(2,A2,T2);

三、搭配select插入数据

语法:

insert into tableName(colunm1,colunm2,..) select colunm1,colunm2,..;

多条数据使用union all关联即可。

insert into a(id,name,type)
	select 1,A1,T1
	union all
	select 2,A2,T2;

四、复制旧表的信息到新表

语法:

insert into tableName(colunm1,colunm2,..) select colunm1,colunm2,.. from tableName1;

假设两个表的表结构一样则语句如下,否则请指定字段名称。

insert into a select * from b where id=1;

五、搭配set插入数据

语法:

insert into tableName  set colunm1=value1,colunm2=value2....;

使用set是拓展写法,可以精准的对列赋值,防止赋值时由于顺序混乱导致的数据错误,同时这种写法插入数据的速度更快,但不适合批量循环插入。

insert into a set id=1,name=A1,type=T1;

总结

word文档下载地址:

经验分享 程序员 微信小程序 职场和发展