根据 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 列空的情况

生成后的效果如下

相关推荐
花无缺0001 分钟前
Java开发踩坑:一次线上性能优化案例
java·开发语言·人工智能·面试
yashuk4 分钟前
SpringBoot中自定义Starter
java·spring boot·后端
一只大袋鼠5 分钟前
并发编程(二十三):单例模式(二):静态/非静态方法:单例内存优化关键
java·单例模式·并发编程
6+h9 分钟前
【java IO】缓冲流详解
java·开发语言
爱丽_10 分钟前
方法区 / 元空间:JDK 1.7 到 JDK 1.8 到底变了什么?
java·开发语言
JNU freshman13 分钟前
Ceph 中与“重构/恢复/回填/重平衡”相关的参数表
java·ceph·重构
寻见90316 分钟前
Java为什么能“一次编写,到处运行”?JVM到底解决了什么核心痛点?
java·jvm·java ee
xjdkxnhcoskxbco16 分钟前
Java 多线程“八锁”问题深度解析
java·开发语言·多线程
AI克斯17 分钟前
【通俗易懂】注解(@)的理解
java
spencer_tseng19 分钟前
‘<>‘ operator is not allowed for source level below 1.7
java