长度不固定,而且要用一句sql啊?
关注
关注
解决方案 »
- Oracle10g中使用正则表达式提示REGEXP_LIKE标识符无效。
- 求个有难度的sql语句,解决立马结帖!
- 请问一个merge into 的ON后面多个条件如何实现?
- 有谁知道Oracle用户被锁的原因
- SQL语句.高手来帮忙吧
- 我在DBA STUDIO里面建了表,但是用GOLDEN查不到,是为什么呀?
- 访问PRODUCT_USER_PROFILE时错误:未载入产品用户配置文件信息;
- 求助高人:如何在PHP4.2.3里连接Oracle8.1.6?
- Oracle动态执行存储过程,报错!!
- 有关于oracle 查询的问题
- 如何在window 2000下用oracle9i手工创建数据库(不用助手)
- 郁闷ing!我写了insert、update、delete三个触发器,就delete不执行!高手请看!
select substr('Abcce0133',least(
decode(instr('Abcce0133', '0'),0, 10000, instr('Abcce0133', '0')),
decode(instr('Abcce0133', '1'),0, 10000, instr('Abcce0133', '1')),
decode(instr('Abcce0133', '2'),0, 10000, instr('Abcce0133', '2')),
decode(instr('Abcce0133', '3'),0, 10000, instr('Abcce0133', '3')),
decode(instr('Abcce0133', '4'),0, 10000, instr('Abcce0133', '4')),
decode(instr('Abcce0133', '5'),0, 10000, instr('Abcce0133', '5')),
decode(instr('Abcce0133', '6'),0, 10000, instr('Abcce0133', '6')),
decode(instr('Abcce0133', '7'),0, 10000, instr('Abcce0133', '7')),
decode(instr('Abcce0133', '8'),0, 10000, instr('Abcce0133', '8')),
decode(instr('Abcce0133', '9'),0, 10000, instr('Abcce0133', '9')))
)
from dual;
还有没有别的?也可以不用一句,毕竟效率更重要。
select substr('Abcce50000000133',least(
decode(instr('Abcce50000000133', '0'),0, 10000, instr('Abcce0133', '0')),
decode(instr('Abcce50000000133', '1'),0, 10000, instr('Abcce0133', '1')),
decode(instr('Abcce50000000133', '2'),0, 10000, instr('Abcce0133', '2')),
decode(instr('Abcce50000000133', '3'),0, 10000, instr('Abcce0133', '3')),
decode(instr('Abcce50000000133', '4'),0, 10000, instr('Abcce0133', '4')),
decode(instr('Abcce50000000133', '5'),0, 10000, instr('Abcce0133', '5')),
decode(instr('Abcce50000000133', '6'),0, 10000, instr('Abcce0133', '6')),
decode(instr('Abcce50000000133', '7'),0, 10000, instr('Abcce0133', '7')),
decode(instr('Abcce50000000133', '8'),0, 10000, instr('Abcce0133', '8')),
decode(instr('Abcce50000000133', '9'),0, 10000, instr('Abcce0133', '9')))
)
from dual
/上面的字符串刚好是0开始的
select translate('Abcce0133','0123456789',' ') from dual;
2 select translate('aef124','0123456789',' ') col
3 from dual) t;SUB
---
aefSQL>
2 select translate('aef12wef2341sdf','0123456789',' ') col
3 from dual) t;SUB
---
aefSQL> select trim(translate('aef12123','0123456789',' ')) col from dual;COL
---
aefSQL> 上面是对所有情况的处理,你说的那种情况是比较简单的
用最后面的那个语句即可。