我有一个光标,我传递一个标志,并在该光标内,我使用以下条件
cursor abc (c_flag )
IS
select 1
from pqr p
where p.c1 = CASE c_flag ='Y'
THEN p.c1
ELSE IS NOT NULL
END
Run Code Online (Sandbox Code Playgroud)
现在的问题是ELSE案例对我来说不起作用,因为它应该写成p.c1 IS NOT NULL
,而不是p.c1 = IS NOT NULL.
我想你得到了我想做的事,如果c_flag
是的话,我会记录所有的记录,如果没有,那么选择所有非空记录.我使用Oracle作为RDBMS.
你可以用OR
它
SELECT 1
FROM pqr p
WHERE c_flag = 'Y'
OR p.c1 IS NOT NULL
Run Code Online (Sandbox Code Playgroud)