oracle trunc函数用法

请问在oracle中 trunc 函数能否用于截取字符串?比如说 如下字符串:1234asdqwe,我想要去掉前面的数字,只取后面的字母,实现该功能的语句是怎样的?还有就是,如果类似的数据有很多,我需要全部取出来,都要截掉前面的数字,但是后面的字母又不是定长的,该功能又要用什么语句来实现?
最新回答
一念花开

2024-07-27 03:25:10

trunc只处理date和number类型数据 字符串没法处理
追问
那请问有没有一个函数可以处理此类情况?
追答
http://www.weste.net/2010/9-18/72581.html


参考实现
select substr('1234asdqwe',regexp_instr('1234asdqwe','[a-zA-Z]',1)) as r from dual
夏天晴

2024-07-27 05:42:55

提示,可以用Oracle的正则表达式处理,regexp_replace
追问
谢谢,你跟一楼说的一样。我先研究一下 - -
撸管冠军╮

2024-07-27 00:33:51

可以从字符的assic码考虑,数字与字符不一样的。
正则表达式也可以。
追问
~~~新手小白 - - 不太明白。大神可否举个例子?
追答
select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;
先遍历字符串,找到字母,然后截取