微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mysql必读浅析MySQL replace into 的用法

MysqL必读浅析MysqL replace into 的用法》要点:
本文介绍了MysqL必读浅析MysqL replace into 的用法,希望对您有用。如果有疑问,可以联系我们。

sql Server 中可以这样处理:MysqL入门

代码如下:
 
if not exists (select 1 from t where id = 1)
   insert into t(id,update_time) values(1,getdate())
else
   update t set update_time = getdate() where id = 1

那么 MysqL 中如何实现这样的逻辑呢?别着急!MysqL 中有更简单的方法: replace intoMysqL入门

代码如下:
 
replace into t(id,Now());
或 
replace into t(id,update_time) select 1,Now();

replace into 跟 insert 功能类似,不同点在于:replace into 首先尝试插入数据到表中,1. 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据. 2. 否则,直接插入新数据. 要注意的是:插入数据的表必须有主键或者是唯一索引!否则的话,replace into 会直接插入数据,这将导致表中出现重复的数据.MysqL入门

MysqL replace into 有三种形式:MysqL入门

代码如下:

 replace into tbl_name(col_name,...) values(...)
 replace into tbl_name(col_name,...) select ...
 replace into tbl_name set col_name=value,...

前两种形式用的多些.其中 “into” 关键字可以省略,不过最好加上 “into”,这样意思更加直观.另外,对于那些没有给予值的列,MysqL自动为这些列赋上认值.MysqL入门

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐