我是PL / SQL的新手,并从旧程序中获取代码,检查表中是否存在记录:
oRetValue := ' ';
SELECT f1
INTO oRetValue
FROM t1
WHERE w1='w1'
AND code = iCode;
之前没关系,但现在应用程序有超过500行要验证。我想传递一个字符串,其中所有代码都用逗号分隔,并且该过程将循环并返回未找到的所有icode。任何帮助将不胜感激。
答案 0 :(得分:1)
试试这个:
select f1
into oretvalue
from t1
where w1 = 'w1'
and code in
(select p_code
from (select level as id,
regexp_substr(icode, '[^,]+', 1, level) as p_code
from dual
connect by regexp_substr(icode, '[^,]+', 1, level) is not null));