Oracle DB - 如何在AND运算符中设置IF语句?
我想在执行AND
运算符之前设置IF
声明。Oracle DB - 如何在AND运算符中设置IF语句?
例如:
PROCEDURE STORE_SIGNLOOP_APPROVER (
userID in varchar2
isManager in varchar2
result out ref_cursor
)
AS
BEGIN
SELECT user_role
FROM users
WHERE user_id = userID
AND **IF isManager = 'true'** user_id IN (SELECT user id from managers)
END;
回答:
你可以使用:
select user_role fron users
where user_id = userID
AND (((user_id in (select user_id from managers) AND isManager = 'true'))
OR isManager = 'false'
);
注:不是传递 '真/假' 作为字符串文字,你可以使用 '0/1' 的值。
以上是 Oracle DB - 如何在AND运算符中设置IF语句? 的全部内容, 来源链接: utcz.com/qa/260066.html