我在PL / SQL中有一个函数,里面有两个SQL语句,它们如下:
select access_level into v_access from users where user_ID = APEX_UTIL.get_username( APEX_UTIL.get_current_user_id );
和
for row in ( select distinct sub_category_lu
, f_get_display('SUB_CATEGORY', sub_category_lu) display
from files
where active = 'Y'
and publish_date <= sysdate
and category_lu = p_category
and key in ( 0, snl_key )
order by substr(sub_category_lu,1,2)
) loop
现在基于第一个sql语句的输出,我想在第二个sql语句中添加另一个'and'
条件,该语句位于for循环中。
如果v_access是'xyz',那么我想在for循环sql语句中添加一个条件
AND sub_category_lu NOT LIKE '03%' AND sub_category_lu NOT LIKE '04%'
否则不要添加此条件并保持循环如上所述。如何在循环中根据此添加if语句。 提前谢谢。
答案 0 :(得分:0)
只需添加:
(...) AND (v_access != 'xyz'
OR (sub_category_lu NOT LIKE '03%' AND sub_category_lu NOT LIKE '04%'))