根据 Excel 列生成 SQL

时间:2024-04-24 21:27:47

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

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

Excel 公式如下: 

="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 列空的情况

生成后的效果如下