Sunday, October 4, 2009

fetch the values from a string separated by commas in Oracle

SELECT * FROM (
SELECT TRIM( SUBSTR ( txt
, INSTR (txt, ',', 1, level ) + 1
, INSTR (txt, ',', 1, level+1
)
- INSTR (txt, ',', 1, level) -1 ) )
AS Result
FROM ( SELECT ',':in_string',' AS txt
FROM dual )
CONNECT BY level <=
LENGTH(txt)-LENGTH(REPLACE(txt,',',''))-1
)
Ex:
:in_string := '1,q,a,z,2,w,s,x';
Result
--------------------------
1
q
a
z
2
w
s
x

No comments:

Post a Comment

Blog Archive