类似这种 看看有没有启发
SELECT substr('123/4567/1234598/098',1,INSTR('123/4567/1234598/098','/',1,1)-1) FROM dual;
SELECT substr('123/4567/1234598/098',1,INSTR('123/4567/1234598/098','/',1,1)-1) FROM dual;
解决方案 »
- Pl/sql 操作oracle DB 如何批量新加PROCEDURE ,在线等!急!!!
- clob转long row怎么处理?
- 查询表中日期
- mybatis连接oracle数据库断网后如何实现自动重连
- !!!请高手帮忙:用pl/sql写了一个求去年同月同周某日的函数,有点问题无法解决
- 请教关于OEM和DBA Studio的问题
- 初学oracle,关于sequence的一点疑问
- 这两个KILL SESSION语句有什么不同??
- 有用笔记本跑ORACLE的吗?
- oracel sql中相当于now(),current_timestamp的函数是什么?
- vc代码中连接oracle 失败
- 精简版oracle安装时OracleXETNSListener服务启动又失败
select REGEXP_SUBSTR('123/4567/1234598/098', '[^/]+', 1, LEVEL) STR
from dual
CONNECT BY LEVEL <= REGEXP_COUNT('123/4567/1234598/098', '/') + 1
and prior dbms_random.value is not null;
select REGEXP_SUBSTR('123/4567/1234598/098', '[^/]+', 1, LEVEL) STR
from dual
CONNECT BY LEVEL <= REGEXP_COUNT('123/4567/1234598/098', '/') + 1
and prior dbms_random.value is not null;2楼正解,一般的话还真想不到有这么个函数组合
select REGEXP_SUBSTR('123/4567/1234598/098', '[^/]+', 1, LEVEL) STR
from dual
CONNECT BY LEVEL <= REGEXP_COUNT('123/4567/1234598/098', '/') + 1
and prior dbms_random.value is not null;
and prior dbms_random.value is not null
这个条件是不是可以去掉,我测试了下,有没有这个条件结果都是一样的
select REGEXP_SUBSTR('123/4567/1234598/098', '[^/]+', 1, LEVEL) STR
from dual
CONNECT BY LEVEL <= REGEXP_COUNT('123/4567/1234598/098', '/') + 1
and prior dbms_random.value is not null;
and prior dbms_random.value is not null
这个条件是不是可以去掉,我测试了下,有没有这个条件结果都是一样的
恩。单个字符是可以去掉