查找重复值、移除重复值,都是Excel中的经典问题,可以使用高级筛选功能,也可以使用复杂的公式,还可以使用VBA。...在VBA中,也有多种方式可以移除重复值,这里介绍RemoveDuplicates方法,一个简洁实用的方法。 示例数据如下图1所示,要求移除数据区域A1:D7中第3列(列C)中的重复值。...其中,参数Columns是必需的,指定想要移除重复值的列。注意,可以指定多列。...如果想要指定多个列,使用Array函数: Range("A1:E15").RemoveDuplicates Columns:=Array(3, 5), Header:=xlYes 此时,如果这两列中的值组合是重复的...参数Header可选,默认值是xlNo,即不包含标题行。也就是说,该参数告诉RemoveDuplicates方法数据区域是否包含标题行。可以使用3个值:xlYes,xlNo和xlGuess。
自己在使用tk.mybatis,遇到了这两个问题,在这里分享给大家: 第一个使用insert语句,插入到数据库是为空: 解决方案:就是实体类的字段类型都要是包装类 package com.wang.test.demo.entity...AllArgsConstructor @Table(name = "user")//对应到表名字 public class User implements Serializable { @Id//对应表的主键...因为你的mapper接口继承的是BaseMapper 解决方案:让mapper接口继承Mapper package com.wang.test.demo.mapper; import com.wang.test.demo.entity.User
记一下使用nodejs更新windows server上的代码 项目依赖 主文件代码 工具使用 注意事项 有个项目是部署在阿里云Windows Server服务器上的,每次更新都需要远程或者ssh上去更新...,比较繁琐就搞了一个nodejs工具去更新代码了 # 项目依赖 项目基于koa开发,需要安装koa-router、node-cmd package.json文件 { "name": "code_upd...nodeCmd = require('node-cmd'); router.get('/', async (ctx, next) => { await next(); ctx.body = '更新代码...cmdTxt); }); } app.use(router.routes()); app.use(router.allowedMethods()); app.listen(7000); # 工具使用...可以用pm2启动server.js,然后就可以通过请求ip:7000/upd来更新代码了 # 注意事项 可能需要在阿里云后台的安全组放行项目使用的端口,不然无法请求到服务地址
当我们用UPDLOCK来读取记录时可以对取到的记录加上更新锁,从而加上锁的记录在其它的线程中是不能更改的只能等本线程的事务结束后才能更改。...有时候我需要控制某条记录在我读取后就不许再进行更新,那么我就可以将所有要处理当前记录的查询都加上更新锁,以防止查询后被其它事务修改.将事务的影响降低到最小。...db.Commit(); 上面的操作,首先在AdoHelper对象上开启事务,然后查询投资产品实体的时候在With方法上加上 OQL.SqlServerLock.UPDLOCK 更新锁,接着进行复制的业务处理...,然后更新此实体记录,之后还有复杂的其它业务操作,最后提交事务。...我们看到,OQL的这种更新锁操作,跟直接写SQL语句操作很类似,OQL执行的时候也是这样输出SQL语句的,这样确保数据记录在并发的时候,安全的更新。
“你见过的有些人能漂亮到什么程度?” 爬取链接 原问题在这儿你见过的有些人能漂亮到什么程度? 爬取思路 使用Python爬虫爬取这个问题下的高赞照片。 爬虫爬了下这个问题下的高赞照片。...在欣赏小姐姐的美照之前,我们先来分享一下思路。 通过知乎回答的url,先把回答一页一页的爬下来,存到本地数据库。随后从数据库里读取数据,筛选出高赞的回答,把回答里的图片解析出来。...client = pymongo.MongoClient() db = client["beauty"] if len(items) > 0: db.answers.insert_many...,获取的内容会存到本地MongoDB里 get_answers - 这个函数用于获取所有页的内容,它会调用上面的函数,循环获取每一页的内容 query - 这个函数用于从MongoDB里查询数据,筛选高赞回答...运行项目后,程序会筛选出所有赞数大于100的回答,并且把回答里的图片整理出来。赞数越高的回答,小姐姐的颜值越高。 源码下载 源码下载
Unity3D 项目虽然说使用 C# 脚本开发,但毕竟不是 .NET/C# 项目。今天一位小伙伴告诉我说用错了 .gitignore 文件,结果管理仓库时丢了很多重要的文件。...实际上,GitHub 官方提供了大量不同项目类型的 .gitignore 文件,并且有广大的社区支持时时更新,直接前往 GitHub 官网下载是最好的选择了。...Assets /[Aa]ssets/[Ss]treamingAssets/aa.meta /[Aa]ssets/[Ss]treamingAssets/aa/* 注意到 sln 和 csproj 都是忽略的文件吗...这是 Unity 的项目,其他 .NET 项目经常使用的 sln 解决方案管理方式在这里只是辅助手段而已,你可以阅读我的另一篇博客了解更多: Unity3D 入门:使用 Visual Studio 开发...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。
假设原数据库已有数据: 执行insert ignore重复插入,提示插入了0行(表示忽略此次操作): 执行insert ignore插入,无主键重复,则正常插入新行: (2)使用 replace...假设原数据库已有数据: 执行Insert....on duplicate key update 有主键重复时,在原来语句上执行update,影响行数2行: 在使用上on duplicate key...update 也可以支持多行插入,多行插入时,可以使用VALUES(列名)函数引用列值进行更新操作。...key update num=VALUES(num); 以上语句意思就是说:插入数据时,若当前行存在唯一键冲突,则引用当前行insert时的num列来更新num字段,无重复存在的记录则正常插入。...假设原数据库已有数据: 上述语句执行后,结果如下: 分析: uin为111111遇到主键重复,所以是在原语句上update的,将num值update为当前语句的VALUES('num'),也就是num
策略和工具 有四个关键方法来管理重复 - 使用JOIN关联,并用临时表删除他们。 使用INSERT ... ON DUPLICATE KEY UPDATE在发现重复时更新。...使用DISTINCT修剪SELECT语句的结果并删除重复的。 使用INSERT IGNORE停止插入重复项。 使用连接临时表 只需像内部联接那样执行半连接,然后删除使用临时表找到的重复。...使用INSERT 当INSERT ... ON DUPLICATE KEY UPDATE发现重复的唯一或主键时,它执行更新。 发现多个唯一键时,它只更新第一个。...因此,不要在具有多个唯一索引的表上使用它。...当使用多个表达式时,它返回唯一的组合。 它不会忽略NULL值; 因此,结果还包含NULL作为唯一值。
单列唯一值基本上就是主键。 常用的一般都是多列的唯一索引,比如:当前商品,一个用户只能购买一件。我们将用户id及商品id列设置成唯一索引。那么就可以避免一个用户出现重复购买的情况。...KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致重复的问题,则插入新行,跟普通的insert into一样。...使用insert into,你必须具有insert和update权限 如果有新记录被插入,则受影响行的值显示1;如果原有的记录被更新,则受影响行的值显示2;如果记录被更新前后值是一样的,则受影响行数的值显示...insert ignore能忽略重复数据,只插入不重复的数据。...id的改变;insert … on duplicate key update在遇到重复行时,会直接更新原有的行,具体更新哪些字段怎么更新,取决于update后的语句。
FROM person_old; SELECT * FROM person 可以看到数据转移成功,这里的id字段为自增的主键,在插入时要保证该字段值的唯一性,如果不能确定,可以插入的时候忽略该字段...如果再执行一次就会出错 MySQL和SQLServer的区别: 区别一 当要导入的数据中有重复值的时候,MYSQL会有三种方案 方案一:使用 ignore 关键字 方案二:使用 replace into...WITH (IGNORE_DUP_KEY= ON) ON [PRIMARY] 这样在插入重复值的时候,SQLSERVER第一次会保留值,第二次发现有重复值的时候,SQLSERVER就会忽略掉 区别二...插入自增列时的区别 SQLSERVER需要使用 SETIDENTITY_INSERT 表名 ON 才能把自增字段的值插入到表中,如果不加 SET IDENTITY_INSERT 表名 ON 则在插入数据到表中时...字段的值也可以不指定,指定的时候只要当前id字段列没有你正在插入的那个值就可以,即没有重复值就可以 自由度非常大,而且无须指定 SET IDENTITY_INSERT 表名 ON 选项 区别三 唯一索引的
不同点是:标题中的题目是存在待插入的数据时执行更新操作,而这个简单点的题目是存在待插入的数据时直接忽略,不执行任何操作。 我们先来回答这个简单点的题目。...INSERT语句和ON DUPLICATE KEY UPDATE语句实现 如果指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值...c=c+1; UPDATE table SET c=c+1 WHERE a=1; 如果行作为新记录被插入,则受影响行的值为1;如果原有的记录被更新,则受影响行的值为2。...REPLACE语句实现 使用REPLACE的最大好处就是可以将DELETE和INSERT合二为一,形成一个原子操作。这样就可以不必考虑在同时使用DELETE和INSERT时添加事务等复杂操作了。...在使用REPLACE时,表中必须有唯一索引,而且这个索引所在的字段不能允许空值,否则REPLACE就和INSERT完全一样的。
1-2.插入或更新 如果我们希望插入一条新记录(INSERT),但如果记录已经存在,就更新该记录,此时,可以使用"INSERT INTO … ON DUPLICATE KEY UPDATE …"语句:...,INSERT语句将插入新记录,否则,当前username='chenhaha'的记录将被更新,更新的字段由UPDATE指定。...2、在主键或者唯一索引重复时,replace是delete老记录,而录入新的记录,所以原有的所有记录会被清除,这个时候,如果replace语句的字段不全的话,有些原有的比如c字段的值会被自动填充为默认值...写在文章最后一节咯~ 1-4.插入或忽略 如果我们希望插入一条新记录(INSERT),但如果记录已经存在,就啥事也不干直接忽略,此时,可以使用INSERT IGNORE INTO …语句:情景很多,不再举例赘述...解释: 用于查询的数据包太大(6832997> 1048576)。 您可以通过设置max_allowed_packet的变量来更改服务器上的这个值。 通过解释可以看到用于操作的包太大。
https://blog.csdn.net/haluoluo211/article/details/77984451 本文主要内容: update更新,batch批量更新 insert 数据到表中...,将表中数据插入到另一个表中 insert ignore忽略重复数据插入报错问题 ---- update更新,batch批量更新 ---- set sql_safe_updates=0; # 常规update...update springdemo.users set pwd=nickname where id=id; 下面给一个stack overflow中,按照条件批量更新的示例: 将id=1的字段赋值为...(biz_id,sample_path) SELECT 3,FILE FROM idcard_image WHERE FILE IS NOT NULL; insert ignore忽略重复数据插入报错问题...---- 当表中存在唯一索引时,如果插入相同的值,mysql会报错,所以我们一般使用: insert ignore into tb_name (title, introduction) VALUES
key update,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致重复的问题,则插入新行,跟普通的insert into...使用insert into,你必须具有insert和update权限 如果有新记录被插入,则受影响行的值显示1;如果原有的记录被更新,则受影响行的值显示2;如果记录被更新前后值是一样的,则受影响行数的值显示...如果有两个事务并发的执行同样的语句,那么就会产生death lock,如 img 解决办法: 1、尽量对存在多个唯一键的table使用该语句 2、在有可能有并发事务执行的insert 的内容一样情况下不使用该语句...insert ignore能忽略重复数据,只插入不重复的数据。...id的改变;insert … on duplicate key update在遇到重复行时,会直接更新原有的行,具体更新哪些字段怎么更新,取决于update后的语句。
车票 面试题1:MySQL中你用过的INSERT插入方式都有哪几种? 1、普通插入语句 2、插入或更新 3、插入或替换 4、插入或忽略 面试题2:见过大量数据同时插入的场景么?有哪些处理方式?...我们常见的插入方法一般有这几种,普通插入语句、插入或更新、插入或替换、插入或忽略,应用在不同的场景中,在功能方面呢也会有所不同。...2、插入或更新 如果我们希望插入一条新记录(INSERT),但如果记录已经存在,就更新该记录,此时,可以使用"INSERT INTO … ON DUPLICATE KEY UPDATE …"语句:...,INSERT语句将插入新记录,否则,当前username='chenhaha’的记录将被更新,更新的字段由UPDATE指定。 ...(INSERT),但如果记录已经存在,就啥事也不干直接忽略,此时,可以使用INSERT IGNORE INTO …语句:情景很多,不再举例赘述。
VALUES(1,1),(2,2),(3,3); 使用IGNORE,如果插入的记录中存在重复值会忽略重复值的该记录行,不影响其他行的插入。...2.REPLACE REPLACE INTO Table_name() VALUES(1,1),(2,2),(3,3) 使用replace当插入的记录遇到主键或者唯一重复时先删除表中重复的记录行再插入...UPDATE NAME1=NAME1+1; ON DUPLICATE KEY UPDATE后面使用VALUES指的是插入记录的值,而不使用VALUES指的是表的自身值。...其后执行的UPDATE更新的记录是WHERE重复的主键或唯一键的ID。...以上三种方法均支持标准的INSERT语法,包括INSERT INTO…VALUES,INSERT INTO…SET,INSERT INTO…SELECT。
值的位置和列的位置一一对应;⑤ 当插入多行数据时,多个值列表之间使用逗号分隔;⑥ INSERT 语句返回插入的行数。...修饰符,MySQL 服务器会在执行 INSERT 操作期间忽略那些可忽略的错误(可以忽略插入重复的数据)。...[WHERE clause]; 语句说明:① UPDATE 关键字后指定要更新数据的表名;② 使用 SET 子句设置字段的新值。多个字段使用逗号分隔。...字段的值可以是普通的字面值,也可以是表达式运算,还可以是子查询;③ 使用 WHERE 子句指定要更新的行。只有符合 WHERE 条件的行才会被更新;④ WHERE 子句是可选的。...REPLACE 语句和 INSERT 语句很像,它们的不同之处在于,当插入过程中出现了重复的主键或者重复的唯一索引的时候,INSERT 语句会产生一个错误,而 REPLACE 语句则先删除旧的行,再插入新的行
,与使用单纯的INSERT INTO相同。...KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致重复的问题,则插入新行,跟普通的insert into一样。...使用insert into,你必须具有insert和update权限 如果有新记录被插入,则受影响行的值显示1;如果原有的记录被更新,则受影响行的值显示2;如果记录被更新前后值是一样的,则受影响行数的值显示...结论: 这三种方法都能避免主键或者唯一索引重复导致的插入失败问题。 insert ignore能忽略重复数据,只插入不重复的数据。...id的改变;insert ... on duplicate key update在遇到重复行时,会直接更新原有的行,具体更新哪些字段怎么更新,取决于update后的语句。
当MySQL表字段设置unique key或者primary key时,被约束的字段就必须是唯一的。新插入数据直接使用insert into,如果出现唯一性冲突,就会抛出异常。...简单总结:重复则忽略,不重复则插入。...update 当插入数据时,如果唯一性校验出现重复问题,则在原有记录基础上,更新指定字段内容,其它字段内容保留; 如果没有重复性问题,则执行插入操作。...,删除旧记录,插入新记录; 如果没有重复性问题,则执行插入操作,效果和insert into是一样的。...如果出现重复异常,希望捕获异常,则使用insert into 如果出现重复异常,希望保存旧纪录,忽略新纪录,则使用insert ignore into 如果出现重复异常,希望更新指定字段,则使用insert
return Result.ok(user.getId()); } /** * 修改记录,这里为了方便演示用了GET方法,实际上应该使用POST...,忽略重复行,此方式采用union的方式批量insert int saveOrUpdate(E entity) 保存或修改,当数据库存在记录执行UPDATE,否则执行INSERT int saveOrUpdateIgnoreNull...(E entity) 保存或修改,忽略null字段,当数据库存在记录执行UPDATE,否则执行INSERT int saveUnique(Collection entitys) 批量保存,去除重复行...去除重复行,指定比较器判断 int update(E entity) 更新,更新所有字段 int updateByQuery(E entity, Query query) 根据条件更新 int updateIgnoreNull...(E entity) 更新,忽略null字段 int updateByMap(Map map, Query query) 根据条件更新,map中的数据转化成update语句
领取专属 10元无门槛券
手把手带您无忧上云