求教各位大神,现在要取部分信息,信息内容格式如下, >安徽省>合肥市>肥西县>实验小学>一一班,信息中:安徽省是第一级,合肥市是第二级,肥西县是第三级,实验小学是第四级,一一班是第五级,每级之间用符号 > 隔开。现在我想分别取第三级和第四级 内容,如何写脚本? 注 :每级长度不一样。比如第二级可能有的输入 合肥市三个字,也有的输入合肥两个字,不带市。
解决方案 »
- 1+2+3 公式
- 求解高手,oracle存储过程执行查询的性能
- Oracle根据去掉某一字段相同值的记录
- oracle 11g安装问题
- nvl()之后为什么不能+1,to_number()之后为什么不能max()
- 请教oracle中数据字典前缀的区别,即user all dba
- 64位Linux上安装64位Oracle11g以后会出现重启的不稳定现象
- 求SQL语句,大侠帮忙,都郁闷好久了
- 转移控制文件失败!怎样移动oracle 9i的控制文件?
- ORACLE 8.17不支持row_number()函数吗?
- 静默安装oracle11.2.0 sqlplus 报错
- CROSSCHECK ARCHIVELOG ALL命令后,归档日志不连续怎么办
(select '>安徽省>合肥市>肥西县>实验小学>一一班' s from dual)
from (select '>安徽省>合肥市>肥西县>实验小学>一一班' tab from dual);
执行下面的查询可以看到效果。SELECT regexp_substr('>安徽省>合肥市>肥西县>实验小学>一一班', '[^>]+', 1, 1) FROM dual;
SELECT regexp_substr('>安徽省>合肥市>肥西县>实验小学>一一班', '[^>]+', 1, 2) FROM dual;
SELECT regexp_substr('>安徽省>合肥市>肥西县>实验小学>一一班', '[^>]+', 1, 3) FROM dual;
SELECT regexp_substr('>安徽省>合肥市>肥西县>实验小学>一一班', '[^>]+', 1, 4) FROM dual;
SELECT regexp_substr('>安徽省>合肥市>肥西县>实验小学>一一班', '[^>]+', 1, 5) FROM dual;