MySQL于ON DUPLICATE KEY UPDATE采用

今天我们做的推断插入用途MySQL于ON DUPLICATE KEY UPDATE。现在,Mark下面!

假设你想做的事,再有就是在数据库中插入数据没有数据、如果有数据更新数据,然后你可以选择ON DUPLICATE KEY UPDATE。

ON DUPLICATE KEY UPDATE可以在UNIQUE索引或PRIMARY KEY存在的情况下对旧行运行UPDATE操作。

比如:假设列a被定义为UNIQUE,而且包括值1。则下面两个语句具有同样的效果:

      INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c = c + 1,b = b - 1;
      UPDATE table SET c = c + 1,b = b - 1 WHERE a = 1;


比如:如果INSERT多行记录(如果 a 为主键或 a 是一个 UNIQUE索引列): 

      INSERT INTO TABLE (a,c) VALUES (1,3),(1,7) ON DUPLICATE KEY UPDATE c = c + 1;

运行后,c 的值会变为 4 (第二条与第一条反复, c 在原值上+1)。

      INSERT INTO TABLE (a,c) VALUES (1,3),(1,7) ON DUPLICATE KEY UPDATE c = VALUES(c);

运行后,c 的值会变为 7 (第二条与第一条反复, c 在直接取反复的值7)。


注意:ON DUPLICATE KEY UPDATE仅仅是MySQL的特有语法,并非SQL标准语法! 

官方文档參照:dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#insert


版权声明:本文博主原创文章,博客,未经同意不得转载。

转载于:https://www.cnblogs.com/gcczhongduan/p/4818249.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/458867.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++中Static作用和使用方法

*************************************************** 更多精彩,欢迎进入:http://shop115376623.taobao.com *************************************************** 1、什么是static? static 是C中很常用的修饰符,它被用来控制变量的…

三星+android+7.0+自动纠正单词,升级党必看!三星S/Note系列更新Android 7.0指南

上周,雷科技(微信ID:leitech)曾为大家提供了一份Android 7.0升级预测名单。现在为了增加针对性,这次笔者就以三星最热门的两大旗舰S和Note系列为例,给大家提供一个全方面的更新指南。截至目前,三星S系列和Note系列的正…

iOS开发出错whose view is not in the window hierarchy!的解决

大熊猫猪侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 一个简单的单窗口App在运行时出现错误: 2016-04-07 14:28:48.411 BlurViewAndPopView[4364:168520] Warning: Attempt to present <UIAlertCon…

互联网年鉴

最近互联网行业&#xff0c;有一个词说的比较多了&#xff0c;“资本寒冬”。作为&#xff0c;一个在这个行业里干的人&#xff0c;真心是好怕怕呢。 妈蛋&#xff0c;真怕哪天就突然失业了呀。所以&#xff0c;无聊的(操蛋的)去整理了一些98年开始一直到现在的互联网中一些自己…

android oreo 开机动画,Android O添加了一个 Splash Screen API帮助简化启动屏制作

大多数开发者对闪屏(splash screen)都持不同的态度。一些人支持用闪屏隐藏app的加载&#xff0c;然后自然过渡到主界面&#xff0c;而另一些人认为闪屏不管是对用户还是开发者都是浪费时间。谷歌在这个问题上的立场也是不一的&#xff0c;以前不推荐使用闪屏的使用&#xff0c;…

C++空类默认函数

*************************************************** 更多精彩&#xff0c;欢迎进入&#xff1a;http://shop115376623.taobao.com *************************************************** 定义一个空的C类&#xff0c;例如 class Empty { } 一个空的class在C编译器处理过后就…

拼接SQL的一个技巧

2019独角兽企业重金招聘Python工程师标准>>> 为了避免判断是否要在字符串中加 AND 来连接查询条件&#xff0c;我们可以直接在在WHERE 后面写 id>0。 这样&#xff0c;我们在拼接条件的时候&#xff0c;就可以直接写 AND 了。 SELECT* FROM t_table WHEREid>0…

【Linux导论】Linux引导流程(The Boot Process)

原文 LFS101x.2 Introduction to Linux (Linux Foundation) Chapter 03: Linux Structure and Installation - Section 2: The Boot Process 引导流程 - (The Boot Process) 你是否想过&#xff0c;在你按下电源开关直至Linux登陆提示出现时&#xff0c;后台到底发生了哪些事&a…

String类 写出类的成员函数实现

*************************************************** 更多精彩&#xff0c;欢迎进入&#xff1a;http://shop115376623.taobao.com *************************************************** 已知String类定义如下&#xff1a; class String { public: String(const char *str …

android 管理类,android 线程管理类

1. 延时任务以及取消延时的应用场景&#xff1a;实时搜索&#xff0c;文字内容变化时候不发送请求&#xff0c;当停止变化指定时间后再发送请求2. 使用方法&#xff1a;// 回到主线程MainThreadHelper.runOnUIthread(new Runnable() {Overridepublic void run() {// pushActivi…

计算一行文本的高度

计算一行文本的高度 说明 有时候我们需要知道指定的几行文本的高度&#xff0c;此工具用于解决此种问题。 源码 // // NSStringLabelWidthAndHeight.h // ZiPeiYi // // Created by YouXianMing on 15/12/9. // Copyright © 2015年 YouXianMing. All rights reserved.…

python笔记-python编程优化:常用原则和技术介绍

本人翻译自《Exper Python Programming》 Premature optimization is the root of all evil in programming -Donald Knuth 优化的三原则 让它跑起来先一个非常常见的错误就是在编写代码之初我们就开始对代码进行优化。让人伤心的是这通常做的都是无用功&#xff0c;很多软…

C++成员函数重载、覆盖和隐藏的区别

*************************************************** 更多精彩&#xff0c;欢迎进入&#xff1a;http://shop115376623.taobao.com *************************************************** C成员函数重载、覆盖和隐藏的区别class Base{public:void Walk(int x){ cout <<…

用fputc()函数以字符串形式写入字符到磁盘文件

2019独角兽企业重金招聘Python工程师标准>>> #include <stdio.h> #include <stdlib.h>int main(){FILE *fp;char ch;if((fpfopen("testfile", "a")) NULL){fprintf(stderr, "Error opening file.\n",fp);exit(1);}print…

android 浮动文字提示,Android实现自由拖动并显示文字的悬浮框

项目中需要实现一个状态显示的悬浮框&#xff0c;要求可以设置两种模式&#xff1a;拖动模式和不可拖动模式。实现效果图如下&#xff1a;实现步骤&#xff1a;1.首先要设置该悬浮框的基本属性&#xff1a;/*** 显示弹出框** param context*/SuppressWarnings("WrongConst…

Android4.2.2的Stagefright维护编解码器的数据流

这里是他们自己的源代码阅读点滴总结属性&#xff0c;转请注明出处&#xff0c;谢谢。欢迎和大家分享。qq:1037701636 email:gzzaigcn2012gmail.comAndroid源代码版本号Version&#xff1a;4.2.2; 硬件平台 全志A31前沿&#xff1a;在前面的博文中&#xff0c;基本提到的是stag…

PHP的安装

PHP的环境也是诸多服务器软件的必要因素之一&#xff0c;它是一个HTML内嵌式语言&#xff0c;在服务器端执行。由于PHP的开源高效化平台&#xff0c;所以搭建一个php环境是一个运维工程师必备的能力。现在lamp也有类似lnmp.org那种一键安装包&#xff0c;地址是http://yumlamp.…

android 横向铺满,Android开发全程记录(八)——设置ImageView显示的图片铺满全屏(适应魅族等不常见屏幕比例)...

为适应不同屏幕的手机&#xff0c;ImageView显示的图片可能不铺满屏幕&#xff0c;如果定高的话&#xff0c;两边可能会出现空白。魅族手机就会有这种情况&#xff0c;在其他手机里显示正常&#xff0c;在魅族手机里显示&#xff0c;图片左右两边会出现空白&#xff0c;为解决这…

tihs 关键字

//this关键词/*调用类中的属性 调用类中的方法或构造方法 调用当前对象&#xff0c;调用自己的方法&#xff0c;可以省略。 */ //http://blog.sina.com.cn/s/blog_71f6c1980100wtj4.html//this指当前对象自己public class Google{String s"hello";public Google(Stri…

良好的编程习惯

*************************************************** 更多精彩&#xff0c;欢迎进入&#xff1a;http://shop115376623.taobao.com *************************************************** 良好的编程习惯良好的习惯对于人的成长是非常重要的&#xff0c;良好的编程习惯对于我…