永发信息网

mysql批量删除指定字符后的内容

答案:3  悬赏:30  手机版
解决时间 2021-02-27 07:48
  • 提问者网友:戎马万世
  • 2021-02-27 02:46
比如有个表
name
aaaa/098234u
bbbb/456sdfs34u
cccc
dddd/asfd34u
.......
我想保留/之前的部分,得到结果
name
aaaa
bbbb
cccc
dddd
.......
这样的语句应该怎样写啊?
最佳答案
  • 五星知识达人网友:掌灯师
  • 2021-02-27 03:49
update a SET name=SUBSTRINg(name,1,
case
when LOCATE('/',name)!=0 then LOCATE('/',name)-1
ELSE LENGTH(`name`)
END
);

a:改成你的表名 name是要处理的字段
全部回答
  • 1楼网友:患得患失的劫
  • 2021-02-27 06:06
update table set columnname=replace(columnname,'.htmlhdgdf','') update table set columnname=replace(columnname,'.htmlgfjh,'')
  • 2楼网友:罪歌
  • 2021-02-27 05:11
create table test123 (   test  varchar(30) ); insert into test123 values('aaa.htmlhdgd'); insert into test123 values('bbdd.htmlgfjh'); -- 查询预期结果. select left( test, instr(test, '.html') - 1) from test123; +---------------------------------------+ | left( test, instr(test, '.html') - 1) | +---------------------------------------+ | aaa                                   | | bbdd                                  | +---------------------------------------+ 2 rows in set (0.00 sec) -- 更新 update    test123 set   test =  left( test, instr(test, '.html') - 1); -- 核对. select * from test123; +------+ | test | +------+ | aaa  | | bbdd | +------+ 2 rows in set (0.00 sec)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯