根据 Excel 列生成 SQL

公司有个历史数据刷数据的需求, 开发功能有点浪费, 手工刷数据有点慢, 所以研究了下 excel 直接生成 SQL, 挺好用, 记录一下;

例如这是我们的数据, 要求把创建时间完成时间刷进数据库中, 工单编号唯一

Excel 公式如下:

sql 复制代码
="UPDATE     service_order     SET     create_time ='"&TEXT(B2,"yyyy-mm-dd hh:mm:ss")&"' "&IF(C2="","",",     complete_time='"&C2&"' ")&"    
WHERE      order_no='"&A2&"';"

"&公式&" 通过这种格式引用公式

'"&C2&"' 这么写是因为 单元格C2 在引号内引用, 不加 "&&" 就会被当字符串处理, 无法动态引用单元格, 所以要特殊处理, IF 函数用来判断 C 列空的情况

生成后的效果如下

相关推荐
杨杨杨大侠4 分钟前
第2章:设计核心接口和事件模型
java·github·eventbus
杨杨杨大侠10 分钟前
第1章:事件驱动框架基础概念
java·github·eventbus
半夏陌离11 分钟前
SQL 进阶指南:视图的创建与使用(视图语法 / 作用 / 权限控制)
java·数据库·mybatis
程序员皮皮林40 分钟前
Java jar 如何防止被反编译?代码写的太烂,害怕被人发现
java·开发语言·jar
橙序员小站1 小时前
搞定系统面试题:如何实现分布式Session管理
java·后端·面试
叫我阿柒啊1 小时前
从Java全栈到Vue3实战:一次真实面试中的技术探索
java·数据库·spring boot·微服务·typescript·vue3·restful
武子康1 小时前
Java-118 深入浅出 MySQL ShardingSphere 分片剖析:SQL 支持范围、限制与优化实践
java·大数据·数据库·分布式·sql·mysql·性能优化
努力努力再努力wz2 小时前
【c++进阶系列】:万字详解AVL树(附源码实现)
java·运维·开发语言·c++·redis
爱学习de测试小白2 小时前
13-Java-面向对象-封装和this关键字
java
-哈喽沃德-2 小时前
Date、BigDecimal类型值转换
java