首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

MySQL批量更新大量的数据方法分享

最近需要批量更新大量数据,习惯了写sql,所以还是用sql来实现,update A set a='123' where code in (select code from B);,以前都是这样处理,不过因为...B是一个大数据量特别多,执行特别耗时,所以后面想到通过查询大量数据,然后再放在in里面,不过因为之前用惯了oracle,知道in只能支持1000条数据,不知道mysql里竟然没有这个限制,不知道是否可以通过...然后这些数据可以查出来,不过都是没有加上双引号的,所以可以在notepad++里进行处理 在大量数据前面,可以按Alt健,然后再加上,不过觉得数据量太多,还是麻烦,所以可以通过正则表达式的方法进行批量替换...,按Ctrl+H,查找模式选择正则表达式,查找目标写为^,替换为",然后点全部替换 替换后面的,同样,查找目标写为$,替换为",,点全部替换 ok,数据就可以很快处理好了,还要借助Excel的筛选功能...,数据处理好之后,就可以将数据复制到sql的in里,批量更新数据相对快很多

3.7K10

A关联B派生C C随着A,B 的更新更新

摘要: 本篇写的是触发器和外键约束 关键词: 触发器 | 外键约束 | 储存表链接更新 | Mysql 之所以用这个标题而没用触发器或者外键约束的原因, 1、是因为在做出这个需求之前博主是对触发器和外键约束丝毫理不清楚的...2这个标题比较接地气,因为老板就是这样给我提需求的 先说需求: A关联B派生C C随着A,B 的更新更新 走的弯路: 关联更新,所以我的重点找到关联上去了,然后就找到了外键,看了一大波外键的文章博客...,当我成功设置好外键时候,测试删除没问题,插入不会更新,所以我一开始以为是我外键设置的问题 直到我继续找资料看到一句话: sql里的外键和主键的定义是一样的,都是代表了索引 (这句话看了好多次,第一次是设置外键时候没法设置...解决办法:——触发器 在百度大佬的帮助下我终于回归正途,触发器,插入时候触发更新 DELIMITER // CREATE TRIGGER test_tri AFTER INSERT ON test FOR...再加一句,标题是三个,我只写了两个,其实原理都是一样的!会一个后面的就自由发散吧!哈哈

1K10

MySQL使用存储过程批量更新数据库所有某个字段值

当时添加的时候没有设置默认值,现在要对二三十张某个字段,如对 del_flag 设置默认值为0,怎么做呢?一张一张地设置比较蠢,如何实现批量操作呢?比如查出所有的名,然后来一个循环操作。...); -- 查询数据库sens_blog中含有del_flag列的,如果区分大小写使用binary COLUMN_NAME = 'del_flag' DECLARE result CURSOR FOR...,比如FETCH result INTO tname,ttype,...; FETCH result INTO tname; -- 拼接字符串名sql,根据需要使用CONCAT函数连接 -- 批量设置所有的为...del_flag字段0 -- SET @execSql = CONCAT('UPDATE ', tname, ' SET del_flag = 0');  -- 批量设置所有的为del_flag字段默认值为...COLUMN del_flag SET DEFAULT  0'); PREPARE stmt FROM @execSql; EXECUTE stmt; END WHILE; END; -- 调用存储过程更新数据

5K30

MySql数据库Update批量更新批量更新多条记录的不同值实现方法

批量更新 mysql更新语句很简单,更新一条数据的某个字段,一般这样写: UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value...那么能不能一条sql语句实现批量更新呢?mysql并没有提供直接的方法来实现批量更新,但是可以用点小技巧来实现。...确保sql语句仅执行需要修改的行数,这里只有3条数据进行更新,而where子句确保只有3行数据执行。...代码也很容易理解,你学会了吗 性能分析 当我使用上万条记录利用mysql批量更新,发现使用最原始的批量update发现性能很差,将网上看到的总结一下一共有以下三种办法: 1.批量update,一条记录update...(x,'y') on duplicate key update dr=values(dr); 3.创建临时,先更新临时,然后从临时中update  代码如下 create temporary table

19.2K31
领券