前言:今天有一个需求需要更新线上的数据库,大概三千多条,几张表还不在同一个库没法用连表的方式更新,只能是批量先查出来在更新,老大教了一个骚操作,在此记录一下。
本次用到的函数:
=CONCATENATE("update 表名 set 字段1 = '",A1,"',字段2 = '",B1,"' where 条件1 = '",C1,"' and 条件2 = '';")
其他 sql 语句同理,excel 只是提供了替换的功能
1、查出来 A 库需要更新的字段
2、去 B 库查出要更新的字段对应的值
3、利用 Excel CONCATENATE 函数生成多条 sql 语句
4、复制出去执行
注意事项:sql in 语句阿里代码规范建议 in 里面的条件少于 1000 条,大于的话此次就手动分批了
tips:查询出来很多数据这个时候我要放到 in 条件里,开发测试相信大家肯定经常碰到这个场景,我之前是拷贝出去然后用 Alt+ 左键这种多行去加单引号双引号什么的,但是碰到长度不相同的就要单独加。
这次发现利用 notepad 或者 editPlus 的替换时会方便更多
- 1、Crtl+F 唤出搜索框,选择替换
- 2、勾选正则表达式
^ 代表一行的首位
\r 代表一行的末位
其他的替换大家可以搜一下正则表达式
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于