Si la declaración dentro de la cláusula Where
Estoy trabajando con una consulta que contiene declaraciones "IF" dentro de una cláusula "WHERE". Pero PL \ SQL Developer está dando algunos errores mientras lo ejecuta. ¿Alguien puede ayudarme con la consulta correcta? Aquí está la consulta:
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;
Recibo el error "ORA-00920: operador relacional no válido".
Colocando corchetes alrededorstatus_flag = STATUS_ACTIVE
da como resultado el error "ORA-00907: falta el paréntesis derecho"