我正在使用包含「WHERE」子句中的「IF」語句的查詢。但PL \ SQL Developer在執行時會出現一些錯誤。任何人都可以請幫助我正確的查詢?以下是查詢:如果在Where子句中的語句
SELECT t.first_name,
t.last_name,
t.employid,
t.status
FROM employeetable t
WHERE IF status_flag = STATUS_ACTIVE then t.status = 'A'
IF status_flag = STATUS_INACTIVE then t.status = 'T'
IF source_flag = SOURCE_FUNCTION then t.business_unit = 'production'
IF source_flag = SOURCE_USER then t.business_unit = 'users'
AND t.first_name LIKE firstname
AND t.last_name LIKE lastname
AND t.employid LIKE employeeid;
我收到錯誤「ORA-00920:invalid relational operator」。
配售括號status_flag = STATUS_ACTIVE
導致錯誤「ORA-00907:缺少右括號」
謝謝!這真的有幫助 – user2100620 2013-03-14 13:49:43
@DCookie,如何在IF語句中添加WHERE子句條件? – masT 2014-06-19 12:12:09
案例:'t.status = null'在t.status實際上爲null的情況下不起作用。空很奇怪。 – defactodeity 2014-12-18 06:57:00