博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
可遇不可求的Question之INSERT … ON DUPLICATE KEY UPDATE 语法篇
阅读量:5216 次
发布时间:2019-06-14

本文共 633 字,大约阅读时间需要 2 分钟。

MySQL 自4.1版以后开始支持INSERT … ON DUPLICATE KEY UPDATE语法,使得原本需要执行3条SQL语句(SELECT,INSERT,UPDATE),缩减为1条语句即可完成。

例如ipstats表结构如下:

CREATE TABLE ipstats (ip varchar(15) not null unique,clicks smallint(5) unsigned not null default '0');

原本需要执行3条SQL语句,如下:

IF (SELECT * FROM ipstats WHERE ip='192.168.0.1') {
UPDATE ipstats SET clicks=clicks+1 WHERE ip='192.168.0.1';} else {
INSERT INTO ipstats (ip, clicks) VALUES ('192.168.0.1', 1);}

而现在只需下面1条SQL语句即可完成:

INSERT INTO ipstats VALUES('192.168.0.1', 1) ON DUPLICATE KEY UPDATE clicks=clicks+1;

注意,要使用这条语句,前提条件是这个表必须有一个唯一索引或主键。

转载于:https://www.cnblogs.com/tigerjacky/p/2128219.html

你可能感兴趣的文章
专题训练之AC自动机
查看>>
Spring-hibernate整合
查看>>
C#:重载、重写、隐藏的定义
查看>>
在cxf中使用配置避免增加字段导致客户端必须更新、同步实体属性的问题
查看>>
linux netlink套接字学习资料
查看>>
Day14 自己定义泛型类的使用
查看>>
Linux驱动:内核等待队列
查看>>
学习Node.js笔记(一)
查看>>
初识数据库
查看>>
读书笔记 ~ Nmap渗透测试指南
查看>>
windows 下my.ini的配置优化
查看>>
make/Makefile/CMake/qmake
查看>>
Python 多进程 multiprocessing 下篇
查看>>
开源FTP软件FileZilla使用介绍
查看>>
【3】杭州思科电话面试
查看>>
资源文件的优点,在分模块式开发的大环境下,资源文件 几乎没有优势。。。小软件 有优势。...
查看>>
.net 调用小票打印机 打印票据
查看>>
Docker 第六章 存储卷
查看>>
教你一招:Microsoft Office Word已停止工作
查看>>
poj 2480 数论
查看>>