比如有个表
name
aaaa/098234u
bbbb/456sdfs34u
cccc
dddd/asfd34u
.......
我想保留/之前的部分,得到结果
name
aaaa
bbbb
cccc
dddd
.......
这样的语句应该怎样写啊?
mysql批量删除指定字符后的内容
答案:3 悬赏:30 手机版
解决时间 2021-02-27 07:48
- 提问者网友:戎马万世
- 2021-02-27 02:46
最佳答案
- 五星知识达人网友:掌灯师
- 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是要处理的字段
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)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯