insert into 语句的三种写法

方式1、 INSERT INTO t1(field1,field2) VALUE (v001,v002); // 明确只插入一条Value 方式2、 INSERT INTO t1(field1,field2) VALUE S (v101,v102),(v201,v202),(v301,v302),(v401,v402); 在插入批量数据时方式2优于方式1. 方式3.1、 INSERT INTO t2(field1,

方式1、 INSERT INTO t1(field1,field2) VALUE(v001,v002);            // 明确只插入一条Value

方式2、 INSERT INTO t1(field1,field2) VALUES(v101,v102),(v201,v202),(v301,v302),(v401,v402);

在插入批量数据时方式2优于方式1.

方式3.1、  INSERT INTO t2(field1,field2) SELECT col1,col2 FROM t1 WHERE ……

这里简单说一下,由于可以指定插入到talbe2中的列,以及可以通过相对较复杂的查询语句进行数据源获取,可能使用起来会更加的灵活一些,但我们也必须注意,我们在指定目标表的列时,一定要将所有非空列都填上,否则将无法进行数据插入,还有一点比较容易出错的地方就是,当我们写成如下简写格式:

方式3.2、  INSERT INTO t2 SELECT id, name, address FROM t1

此时,我们如果略掉了目标表的列的话,则默认会对目标表的全部列进行数据插入,且SELECT后面的列的顺序 必须和目标表中的列的定义顺序完全一致 才能完成正确的数据插入,这是一个很容易被忽略的地方,值得注意。跟版网模板整理发布

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

数据库查询哪个对像里面包含什么字段语句写法: select * from sysobjects o, syscomments s where o.id = s.id and text like %text% and o.xtype = P text 换成需要查的字段 数据库查询哪个对像里面包含表: select o.name from sys.all_sql_modules s,sys
摘要: SQL的WHERE子句中包含多个AND和OR 示例: SQL解析器在处理操作时会优先处理and操作: 假如有表product字段如下:id、product_id、product_price、product_name,现在要查找产品号为100或者101,并且价格大于200的商品,程序员可能会这样写: select * fr
mysql模糊查询like的用法 查询user表中姓名中有王字的: select * from user where name like %王% mysql模糊查询not like的用法 查询user表中姓名中没有王字的: select * from user where name not like %王% 查询user表中地址在上海姓名中没有王字和所有
方法1:select max(id) from tablename 方法2:select last_insert_id(); 在MySQL中,使用auto_increment类型的id字段作为表的主键,并用它作为其他表的外键,形成主从表结构,这是数据库设计中 常见的用法。但是在具体生成id的时候,我们的操作顺序一般是:
mysql删 除动作不能带有本表的查询动作,意思是你删除users表的东西不能以users表的信息为条件所以这个语句会报错,执行不了。只要通过创建临时表作为查询条件。具体实现如下: delete from `table` where id not in ( select * from ( select min(id) from
MySQL的自增语句大家应该都很熟悉 也很简单 update `info` set `comments` = `comments`+1 WHERE `id` = 32 这样就可以了,但是有时候我们会涉及到做减法, 例如:文章的评论数,在删除或者锁定了一条评论之后需要对该文章总评论数减一 comments smallint(5)