数据库更新命令语法怎么写??大佬进
侧边栏壁纸
  • 累计撰写 57,172 篇文章
  • 累计收到 0 条评论

数据库更新命令语法怎么写??大佬进

James
2020-11-07 / 0 评论 / 59 阅读 / 正在检测是否收录...

数据库是mysql,在宝塔后台phpmyadmin那边执行操作的。

需求:在表一中,字段1中,其中的字符串,aaa.com/picture/2020/11/(这里的年份和月份不是固定的)替换成bbb.com/picture/2020/10/(这里的年份和月份是固定的)

补充:试过了普通的update表名set字段名=replace(字段名,"aaa.com/picture/%/%/","bbb.com/picture/2020/10/"),不行,replace不能用通配符。


-----------------------------------------------------
网友回复:

如果你的mysql版本较高,可以用regexp_replace,这个可以正则匹配。


网友回复:

引用:baiyangz1发表于2020-11-509:13

数据库是sql,在宝塔后台phpmyadmin那边执行操作的。


网友回复:

引用:l516q发表于2020-11-509:11

什么数据库,几十种呢


网友回复:

先备份再试

update表名set字段名=bbb.com/picture/2020/10/where字段名regexpaaa.com/picture/[[:digit:]]{4}/[[:digit:]]{2}/

参考https://blog.csdn.net/vvhesj/article/details/22299413


网友回复:

数据量不多的话,实在不行就随便找个语言写个脚本,数据分批取出来,修改完再丢回去


网友回复:

引用:论坛大师发表于2020-11-509:26

phpmyadmin是不支持sql数据库的,你需要这个https://www.microsoft.com/zh-cn/sql-server/sql-server-do...


网友回复:

你直接用pma的替换功能,生成语句就可以。可以用通配符


网友回复:

引用:baiyangz1发表于2020-11-509:28

搞错了,是mysql,我不是很懂这些


网友回复:

先备份

UPDATE表名SET字段名=bbb.com/picture/2020/10/WHERE字段名LIKEaaa.com/picture/%/%/;

这样可以吗


网友回复:

知识错误了

这种基础问题直接搜索一下即可

问反而耗费时间


网友回复:

update表名set字段名="bbb.com/picture/2020/10/"where字段名regexp"aaa.com/picture/[0-9]+/[0-9]+/"


网友回复:

引用:傍晚升起的太阳发表于2020-11-509:27

数据量不多的话,实在不行就随便找个语言写个脚本,数据分批取出来,修改完再丢回去...


网友回复:

引用:xnlebb发表于2020-11-509:25

先备份再试

update表名set字段名=bbb.com/picture/2020/10/where字段名regexpaaa.com/picture/[[...


网友回复:

引用:论坛大师发表于2020-11-509:30

MySQL就说MySQL,SQL是指微软公司的ServerSQL


网友回复:

引用:baiyangz1发表于2020-11-509:50

感谢哈,但是这样会把整个字段变成bbb.com/picture/2020/10/,里面其实还有很多其他内容。...


网友回复:

你使用update语句的时候where条件内直接字段likeaaa.com/picture/%不就好了


网友回复:

引用:class发表于2020-11-509:53

微软公司的ServerSQL 是 mssql


网友回复:

引用:baiyangz1发表于2020-11-509:50

感谢哈,但是这样会把整个字段变成bbb.com/picture/2020/10/,里面其实还有很多其他内容。...


网友回复:

如果你的mysql版本较高,可以用regexp_replace,这个可以正则匹配。


网友回复:

引用:xnlebb发表于2020-11-510:41

update表名set字段名=regexp_replace(字段名,aaa.com/picture/[[:digit:]]{4}/[[:digit:]]{2}/,b...

0