(WITH t1 AS (select rtrim(user_id,',') str from dual)
SELECT s from (SELECT substr(t1.str,instr(t1.str,',',1,LEVEL) + 1,
decode(instr(t1.str,',',1, LEVEL + 1),0,length(str) + 1,
instr(t1.str,',',1,LEVEL + 1)) - instr(t1.str,',',1,LEVEL) - 1) s
FROM dual, t1 CONNECT BY LEVEL <= length(str) -length(REPLACE(str, ','))))
user_id为传入值 如(',1001,1002,1003,1004,')
最后结构可以转换为
1001
1002
1003
1004