Cette question a été posée récemment:
http://www.developpez.net/forums/d774075/bases-donnees/oracle/sql/select-case-then-retourne-variable/