mysql into_MYSQL中replace into的用法
新建一个test表,三个字段,id,title,uid, id是自增的主键,uid是唯一索引;
插入两条数据
insert into test(title,uid) VALUES ('123465','1001');insert into test(title,uid) VALUES ('123465','1002');
执行单条插入数据可以看到,执行结果如下:
[SQL]insert into test(title,uid) VALUES ('123465','1001');
受影响的行: 1时间: 0.175s
使用 replace into插入数据时:
REPLACE INTO test(title,uid) VALUES ('1234657','1003');
执行结果:
[SQL]REPLACE INTO test(title,uid) VALUES ('1234657','1003');
受影响的行: 1
时间: 0.035s
当前数据库test表所有数据如下:
当uid存在时,使用replace into 语句
REPLACE INTO test(title,uid) VALUES ('1234657','1001');[SQL]REPLACE INTO test(title,uid) VALUES ('1234657','1001');
受影响的行:2时间:0.140s
replace into t(id, update_time) values(1, now());
或
replace into t(id, update_time) select 1, now();
replace into 跟 insert 功能类似,不同点在于:replace into 首先尝试插入数据到表中,1. 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。 2. 否则,直接插入新数据。
要注意的是:插入数据的表必须有主键或者是唯一索引!否则的话,replace into 会直接插入数据,这将导致表中出现重复的数据。
MySQL replace into 有三种形式:
1. replace into tbl_name(col_name, ...) values(...)
2. replace into tbl_name(col_name, ...) select ...
3. replace into tbl_name set col_name=value, ...
第一种形式类似于insert into的用法,
第二种replace select的用法也类似于insert select,这种用法并不一定要求列名匹配,事实上,MYSQL甚至不关心select返回的列名,它需要的是列的位置。例如,replace into tb1( name, title, mood) select rname, rtitle, rmood from tb2;?这个例子使用replace into从?tb2中将所有数据导入tb1中。
第三种replace set用法类似于update set用法,使用一个例如“SET col_name = col_name + 1”的赋值,则对位于右侧的列名称的引用会被作为DEFAULT(col_name)处理。因此,该赋值相当于SET col_name = DEFAULT(col_name) + 1。
前两种形式用的多些。其中 “into” 关键字可以省略,不过最好加上 “into”,这样意思更加直观。另外,对于那些没有给予值的列,MySQL 将自动为这些列赋上默认值。
mysql into_MYSQL中replace into的用法相关推荐
- MYSQL中replace into的用法
今天在编程的时候,学习了replace into的用法,真的很好用,是insert into的增强版.在向表中插入数据时,我们经常会遇到这样的情况:1.首先判断数据是否存在:2.如果不存在,则插入:3 ...
- mysql中replace函数的用法
##-----MySQL数据替换即replace的运用-----## #这里主要介绍一些关于replace函数的用法.关于研究这个主要是发现replace功能很强大 #对于屏蔽关键字很有用处. #现在 ...
- mysql中replace into效率_MYSQL中replace into的用法
做项目是遇到这样一个问题,把查询出的数据插入到一个新表里面,第一次可以直接插入,但是第二次第三次的时候如果直接更新,但是会有些新的数据需要添加,但是如果先删除再插入的话效率不高,如果对比两端的数据,相 ...
- java mysql insert_MySQL中INSERT的一般用法
INSERT语句是最常见的SQL语句之一,但是MySQL中INSERT语句的用法和标准用法不尽相同,下文就为您详细介绍MySQL中INSERT的一般用法,供您参考. 1用法 在标准的SQL语句中,一次 ...
- js中replace作用以及用法
replace作用以及用法 1. 作用:替换字符串中的内容 2. 用法:str.replace(regexp|substr, newSubStr|function) 3. 参数说明:- regexp( ...
- mysql patindex_SQL中 patindex函数的用法
原文: SQL中 patindex函数的用法 语法格式:PATINDEX ( '%pattern%' , expression ) 返回pattern字符串在表达式expression里第一次出现的位 ...
- hive replace替换多个_详解Mysql数据库中replace与replace into的用法及区别
概述 Mysql数据库replace与replace into都是经常会用到的功能:replace其实是做了一次update操作,而不是先delete再insert:而replace into其实与i ...
- mysql中select into_Mysql中SELECT INTO 语句用法详解
语法介绍: 把所有的列插入新表 代码如下 SELECT * INTO new_table_name [IN externaldatabase] FROM old_tablename 只把希望的列插入新 ...
- mysql数据库中case when 的用法
场景1:比如说我们在数据库存了性别的字段,一般都是存0 和 1 代表男和女 然后我们会得到0和1之后在java中判断 ,很麻烦有么有?其实我们完全可以在sql中判断好之后拿来现成的.就是在sql中 ...
最新文章
- laravel 5 自定义全局函数,怎么弄呢?
- 《为iPad而设计:打造畅销App》——将iPad作为视频娱乐设备
- html文字阴影php,HTML_html5文字阴影效果text-shadow使用示例,复制代码代码如下: !DOCTYPE h - phpStudy...
- python画相关系数矩阵图_pyhton中matplotlib箱线图的绘制(matplotlib双轴图、箱线图、散点图以及相关系数矩阵图))...
- mybatis中prefix,suffix,prefixOverrides,suffixOverrides用法解释
- 【免费毕设】asp.net电子书城系统设计与实现(源代码+lunwen)
- RDKit化学式 分子式搜索
- iOS开发之抓包工具的Charles的初步安装使用:一步一步教你学会抓包工具Charles的使用(下载破解+代理设置+证书配置)
- 快手直播怎么下载?一键轻松下载直播
- linux qt程序向windows移植失败记.
- 前后端分离实现文件下载功能
- 柳婼、知乎PAT经验分享汇总
- 软件工程各种UML总结
- 巧用Redis做游戏跨服排行榜
- 中国眼镜市场销售前景分析与运营效益研究报告2021-2026年
- Unity3D插件 Doozy UI 学习(三):UI Element
- 数据分析 第六讲 pandas
- ens天空盒_这句话的意思
- 指纹图像方向图matlab,基于Matlab实现的指纹图像细节特征提取
- 转:管理大师曼弗雷德:不关注员工的动机需求,何谈高绩效组织?
热门文章
- TIMING_02 浅谈时序约束与时序分析
- 函数不可访问_关于可重入函数
- solidworks无法获得下列许可standard_SolidWorks2020安装无法获得下列许可SOLIDWORKS Standard怎么解决?...
- 清华博士告诉你 “0Ω电阻”的系列应用
- 基于Nexys4 DDR的VGA显示图片
- 计算机优点 缺点劣势英语作文,Internet网的优点与缺点英语作文
- arm rtx教程_ARM RTX操作系统—Overview—Product Description
- java mouselistener,Java MouseListener接口
- iphone黑屏转圈_iphone7无限转圈黑屏怎么回事?
- 当计算机从硬盘读取数据后 将数据,当计算机从硬盘读取数据后,将数据暂时储存在于()...