Another method:
Code:
09:57:52 SQL> desc my_table
 Name                   Null?    Type
 --------------------- -------- ----------------------------
 C1                            NUMBER(38)
 C2                            NUMBER(38)
 C3                            NUMBER(38)
 C4                            NUMBER(38)

09:58:24 SQL> select * from my_table ;

        C1         C2         C3         C4
---------- ---------- ---------- ----------
         1          2          3          4


select  decode(code,1,c1,2,c2,3,c3,4,c4)
from my_table, (select 1 code from dual union all
                select 2 code from dual union all
                select 3 code from dual union all
                select 4 code from dual  )
/
DECODE(CODE,1,C1,2,C2,3,C3,4,C4)
--------------------------------
                               1
                               2
                               3
                               4

09:59:32 SQL> spool off
~
Tamil