Oracle数据库迁移MySQL——instr()方法

Oracle中使用instr方法确定某个字符的位置,前提字符出现频率为2或者3使用case when then 判断,并使用instr方法确定最后字符出现位置,使用substr切割

 case instr('字符串','/',1,3) 
           when 0 then instr('字符串','/',1,2)
             else instr('字符串','/',1,3) end 

迁移MySQL因为MySQL的INSTR(字段名, 字符串)方法没有定位参数。考虑项目需求决定先使用REVERSE()将字符串反转,使用LOCATE()方法定位指定字符第一次出现的位置,使用字符总长度减去反转后第一次出现位置,最后用left()函数切割字符串

LEFT('字符串', LENGTH('字符串') - LOCATE('/', REVERSE('字符串')))

猜你喜欢

转载自blog.csdn.net/sunguoqiang1213/article/details/80334329
今日推荐