一个sql语句写不出来,请大家帮帮忙
如图所示,我想把这两个数据的province那一列分别改为甘肃和广东,去掉“|”和前面的数字,这样的记录有31条,我想通过一个sql语句搞定,可以吗?有没有什么通配符可以解决?先谢谢大家了,我明天来看大神的答案
oracle?sql?通配符
[解决办法]
正则表达式regexp_substr
[解决办法]
如果里面只有一个
[解决办法]
符号的话 下面这个应该满足了..
with t1 as
(
select '111
[解决办法]
广东' c1 from dual union all
select '113
[解决办法]
哈尔滨' c1 from dual union all
select '222
[解决办法]
湖南' c1 from dual union all
select '333
[解决办法]
内蒙古' c1 from dual union all
select '444
[解决办法]
俄罗斯' c1 from dual
)
select substr(c1,instr(c1,'
[解决办法]
')-length(c1)) c1
from t1
c1
-----------------------
1广东
2哈尔滨
3湖南
4内蒙古
5俄罗斯
SUBSTR(province,instr(province,'
[解决办法]
')+1)