MySQL中的insert ignore into讲解
最近工作中,使用到了insert ignore into语法,感觉这个语法还是挺有用的,就记录下来做个总结。
insert ignore into : 忽略重复的记录,直接插入数据。
包括两种场景:
1、插入的数据是主键冲突时
insert ignore into会给出warnings,show warnings就可以看到提示主键冲突;并且本次插入无效。
[test]> create table tt(c1 int primary key, c2 varchar(50))engine = xx;
Query OK, 0 rows affected (0.21 sec)[test]> insert into tt values(1, "aaa"), (2, "bbb"), (3, "ccc");
Query OK, 3 rows affected (0.02 sec)
Records: 3 Duplicates: 0 Warnings: 0[test]> select * from tt;
+----+------+
| c1 | c2 |
+----+------+
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
+----+------+
3 rows in set (0.01 sec)[test]>
[test]> insert ignore into tt values(1, "aaa"), (2, "bbb"), (3, "ccc");
Query OK, 0 rows affected, 3 warnings (0.01 sec)
Records: 3 Duplicates: 3 Warnings: 3[test]>
[test]> select * from tt;
+----+------+
| c1 | c2 |
+----+------+
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
+----+------+
3 rows in set (0.00 sec)
使用insert ignore into语句时,如果主键冲突,只是提示"warnings"。
如果使用insert into语句时,如果主键冲突直接报错。
2、没有主键冲突时,直接插入数据
insert into 与 insert ignore into 都是直接插入数据
[test]> create table t2(c1 int, c2 varchar(50))engine = xxx;
Query OK, 0 rows affected (0.05 sec)[test]> insert into t2 values(1, "aaa"), (2, "bbb"), (3, "ccc");
Query OK, 3 rows affected (0.03 sec)
Records: 3 Duplicates: 0 Warnings: 0GreatDB Cluster[test]> select * from t2;
+------+------+
| c1 | c2 |
+------+------+
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
+------+------+
3 rows in set (0.00 sec)[test]> insert into t2 values(1, "aaa"), (2, "bbb"), (3, "ccc");
Query OK, 3 rows affected (0.02 sec)
Records: 3 Duplicates: 0 Warnings: 0[test]> insert into t2 values(1, "aaa"), (2, "bbb"), (3, "ccc");
Query OK, 3 rows affected (0.02 sec)
Records: 3 Duplicates: 0 Warnings: 0[test]> select * from t2;
+------+------+
| c1 | c2 |
+------+------+
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
+------+------+
9 rows in set (0.00 sec)[test]> insert ignore into t2 values(1, "aaa"), (2, "bbb"), (3, "ccc");
Query OK, 3 rows affected (0.03 sec)
Records: 3 Duplicates: 0 Warnings: 0
因此,insert ignore into主要是忽略重复的记录,直接插入数据。
MySQL中的insert ignore into讲解相关推荐
- mysql+inser+select_在MySQL中结合INSERT,VALUES和SELECT
您可以使用以下语法组合插入,值和选择语句insert into yourFirstTableName(yourColumnName1,yourColumnName2,.......N) select ...
- MySQL中关于insert语句速度的优化
1.分析 插入一行分下面几个动作,括号后面是其大约比例额 Connecting(3) Sendint query to server(2) Parsing query(2) Inserting row ...
- mysql insert 几分钟_我们可以在MySQL中应用INSERT语句时向VARCHAR日期时间记录添加分钟吗?...
是的,我们可以在将值插入表中时增加分钟数.让我们首先创建一个表.在这里,我们有一列包含VARCHAR记录,其中mysql> create table DemoTable2026 -> ( ...
- MySQL 中的 INSERT 是怎么加锁的?(荣耀典藏版)
目录 前言 一.INSERT 加锁的困惑 二.编译 MySQL 源码 三.调试 INSERT 加锁流程 参考文章 前言 大家好,我是程序缘--幻羽,我又来了!! 前几天看到热心网友在评论中提出的一个问 ...
- mysql insert union_在MySQL中使用INSERT INTO SELECT和UNION执行多次插入
要执行多次插入,语法如下:insert into yourTableName(yourColumnName1,yourColumnName2,yourColumnName3,..N) select y ...
- mysql中 视图的优缺点,详细讲解MYSQL视图的作用及优缺点
一.概念 1.视图是MySQL在5.0.1版本中加入的功能.它可以理解为一个虚表. 2.之所以被称为虚表,是因为它只是存储了一个结构,并不存储真实的数据.行和列的数据来自定义视图的查询中使用的表,并且 ...
- 使用navicat工具将mysql中的insert、update等sql语句生成为delphi的格式
1.打开表. 2.复制为update语句. 3.粘贴到笔记本中,使用替换工具,去除引号. 粘贴到查询编辑器中,含引号复制为delphi语句. 结果. 'UPDATE wqkdatabase.cp_gr ...
- mysql+inser+select_解析MySQL中INSERT INTO SELECT的使用
1. 语法介绍 有三张表a.b.c,现在需要从表b和表c中分别查几个字段的值插入到表a中对应的字段.对于这种情况,可以使用如下的语句来实现: INSERT INTO db1_name (field1, ...
- mysql表设计讲解_MySQL中数据库的设计归纳讲解
谈到MySQL中数据库的设计,相信大家都知道这是实现实际业务的重要一步,因此对于Java学习者来说,深入了解和学习数据库的设计是十分有必要的.本文为大家准备了一份MySQL中数据库的设计归纳讲解,内容 ...
最新文章
- kotlin + springboot启用elasticsearch搜索
- BZOJ3522 [Poi2014]Hotel 【树形dp】
- C++11 (多线程)并发编程总结
- 对Tensor结果使用opencv2中的操作
- Android 小技巧
- iOS 事件传递响应链
- conda 换成清华的源_conda/pip 使用国内镜像安装第三方库
- 软件架构(10)---java资深架构师分布式技术分享
- django-dynamic-scraper(DDS)配置中的一些问题
- 时间和日期的JS库Day.js入门教程
- 怎么让百度收录站点的图片呢?
- 依赖于 !important 标签是个危险的现象。奔驰车如何查4S店的保养记录
- Snagit 2019 快速截图
- b和kb的换算_KB换算
- win7升级win10激活指南——查看预装Win7/8/8.1电脑内置系统激活密钥(OEM Key)方法
- 使注册用户名时不能包含特殊符号
- matlab 中 t=0:t:(n-1)t;k=0:n-1,如何用matlab画出单位脉响应h(n)=sin(n
- 数字孪生医院:一个围绕着智慧医院决策的建模、管理和行动闭环的全新方式...
- 苹果消息推送服务教程:第二部分(共2部分)
- 使用MSHTML解析HTML代码
热门文章
- 搜索引擎 Solr 简介
- 圆柱体积在线计算机,(完整版)圆柱体积计算练习题.docx
- Linux_网络项目_WEB服务器 设计CGI机制,与CGI处理数据
- 服务器系统关闭显卡加速,Windows Server2008 R2性能优化方法
- 杰理之LINEIN 左右声道与 DACLR 输入出的注意【篇】
- 从零基础到高级程序员需要走多久?
- 前端开发 IE 中的常用调试工具 _ PlanABC - 怿飞’s Blog
- js回调函数的用途与写法
- 外文翻译原文附在后面_外文翻译及外文原文(参考格式).doc
- python中matrix是什么意思_Python与线性代数——Numpy中的matrix()和array()的区别