我是靠谱客的博主 开放悟空,最近开发中收集的这篇文章主要介绍sql加上唯一索引后批量插入_批量insert into时防止更新插入重复数据去重的方法...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

mySQL中批量insert into时防止更新插入重复数据去重的方法,主要是讲到了ignore,Replace,ON DUPLICATE KEY UPDATE三种方法

方案一:使用ignore关键字

如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用:INSERT IGNORE INTO `table_name` (`email`, `phone`, `user_id`) VALUES ('www@365jz.com', '13112345678', '9999');

这样当有重复记录就会忽略,执行后返回数字0

还有个应用就是复制表,避免重复记录:INSERT IGNORE INTO `table_1` (`name`) SELECT `name` FROM `table_2`;

方案二:使用Replace

语法格式:

代码如下:REPLACE INTO `table_name`(`col_name`, ...) VALUES (...);

REPLACE INTO `table_name` (`col_name`, ...) SELECT ...;

REPLACE INTO `table_name` SET `col_name`='value',

...算法说明:

REPLACE的运行与INSERT很相像,但是如果旧记录与新记录有相同的值,则在新记录被插入之前,旧记录被删除,即:

尝试把新

最后

以上就是开放悟空为你收集整理的sql加上唯一索引后批量插入_批量insert into时防止更新插入重复数据去重的方法...的全部内容,希望文章能够帮你解决sql加上唯一索引后批量插入_批量insert into时防止更新插入重复数据去重的方法...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部