oracle数据库字符串切割split
2014-07-18 17:25
369 查看
1 新建数据库类型
2 创建function
3 测试
将行转为列显示:
转载自:http://www.2cto.com/database/201302/189173.html
create or replace type STR_SPLIT as table of varchar2(50);
2 创建function
CREATE OR REPLACE FUNCTION SPLITSTR(P_STRING IN VARCHAR2, P_DELIMITER IN VARCHAR2) RETURN STR_SPLIT PIPELINED IS V_LENGTH NUMBER := LENGTH(P_STRING); V_START NUMBER := 1; V_INDEX NUMBER; BEGIN WHILE (V_START <= V_LENGTH) LOOP V_INDEX := INSTR(P_STRING, P_DELIMITER, V_START); IF V_INDEX = 0 THEN PIPE ROW(SUBSTR(P_STRING, V_START)); V_START := V_LENGTH + 1; ELSE PIPE ROW(SUBSTR(P_STRING, V_START, V_INDEX - V_START)); V_START := V_INDEX + 1; END IF; END LOOP; RETURN; END SPLITSTR;
3 测试
select * from table(splitstr('Hello,Cnblogs!',','));
将行转为列显示:
select a.column_value v1,b.column_value v2 from (select * from (select rownum rn,t.* from table(splitstr ('Hello,Cnblogs!',',')) t)) a, (select * from (select rownum rn,t.* from table(splitstr ('Hello,Cnblogs!',',')) t)) b where a.rn=1 and b.rn=2;
转载自:http://www.2cto.com/database/201302/189173.html
相关文章推荐
- split+ Pattern切割字符串
- python3 - 对有规律的字符串进行切割(split用法)
- Java split()方法实现切割字符串
- split+ Pattern切割字符串
- JS字符串切割 data.split();
- C/C++中字符串切割(split)
- Java split()方法实现切割字符串
- delphi学习----字符串切割问题(split)
- python 字符串切割: str.split() 和 re.split() 对比
- split切割字符串注意事项
- Java split()方法实现切割字符串
- 字符串切割Split()
- python字符串切割:str.split()和re.split()对比
- Java split()方法实现切割字符串
- std::string split 标准库字符串切割
- 数组遍历 map()、forEach() 及 字符串切割 split() / 字符串截取 slice()、substring()、substr()
- Java split()方法实现切割字符串
- Java split()方法实现切割字符串
- 实现SQL Server中的切割字符串SplitString函数
- Java split()方法实现切割字符串