Sto lavorando con una query che contiene istruzioni "IF" all'interno di una clausola "WHERE". Ma PL \ SQL Developer sta dando alcuni errori durante l'esecuzione. Qualcuno può aiutarmi con la query corretta? Ecco la query:If statement within Where clausola
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;
Ho ricevuto l'errore "ORA-00920: operatore relazionale non valido".
parentesi Pubblica intorno status_flag = STATUS_ACTIVE
risultati in errore "ORA-00907: mancano parentesi destra"
grazie! questo ha davvero aiutato – user2100620
@DCookie, Come posso aggiungere una condizione della clausola WHERE all'interno di un'istruzione IF? – masT
Caso: 't.status = null' non funzionerebbe per i casi in cui t.status è effettivamente nullo. Null è strano. – defactodeity