För att komplettera resten av svaren här, som främst handlar om NULL-värden och COALESCE/NVL/NVL2:
SELECT *
FROM TheTable
WHERE field1 = CASE field2 WHEN 0 THEN 'abc' WHEN 1 THEN 'def' ELSE '' END
CASE-uttalanden är naturligtvis inte lika kortfattade, men de är inriktade på flexibilitet. Detta är särskilt användbart när dina villkor inte är baserade på NULL-ness.