oracle中PLSQL存储过程中如何使用逗号分隔的集合(逗号分隔字符串转换为一个集合)

原文:

https://blogs.oracle.com/aramamoo/entry/how_to_split_comma_separated_string_and_pass_to_in_clause_of_select_statement

 

'SMITH,ALLEN,WARD,JONES'  为4个值的集合,在存储过程中需要怎么处理才能实现 in (值1,值2,值3,值4 ) 的效果;

下面的方法值得借鉴:下面的方式将一个逗号表达式变成一列的4行的集合来实现。

select regexp_substr('SMITH,ALLEN,WARD,JONES','[^,]+', 1, level) from dual
connect by regexp_substr('SMITH,ALLEN,WARD,JONES', '[^,]+', 1, level) is not null

posted @ 2018-05-05 17:05  疯子110  阅读(741)  评论(0)    收藏  举报