利用excel完成sql更新

180 阅读1分钟

利用excel完成sql更新

组长:要求所有人都要年轻,所以就打算把数据库的年龄都改成18,现在数据库是这样的 student:

idnameage
1张三21
2李四22
3王五25

我:ok,update student set age = 18

组长:不可以,要求每个人要求一个更新语句,例如张三的 update student set age = 18 where id = 1 and age = 21

我:麻烦,不过也挺有道理,毕竟这样出错率会变少,并且即使更新失败也只是单独一条,但是现在只是三条,那么200条咋整呢?

想过用文本编辑器给他替换,但是没行通,所以打算用excel的公式试一下,所以先把数据都复制到表格

image.png

编写公式后

image.png

具体公式 ="update student set age = 18 where id = '"&A1&"' and age = "&C1&" "

公式用法 “string1 " &A1& "string2" 根据不同场景拼接即可 双引号个人理解是连接前后的字符串,&&是加入表格变量,比如A1,A2等

补充: 如果配合mid()函数使用的话: =CONCATENATE("update student set date ='2023-04-",MID(B1,9,2),"' where id ='"&A1&"' and date = '"&B1&"';")