How do you select all columns, plus the result of a CASE statement in oracle 11g?
32,469
Solution 1
Add an alias for mytable like this:
select t.*, (case when PRI_VAL = 1 then 'High'
when PRI_VAL = 2 then 'Med'
when PRI_VAL = 3 then 'Low'
end) as PRIORITY
from MYTABLE t;
This is not dependent on any specific Oracle version, not sure about other databases.
Solution 2
As IronGoofy says, add the table alias.
On a different note be aware that there is a handy searched case syntax that would be suitable for your situation:
select t.*,
case PRI_VAL
when 1 then 'High'
when 2 then 'Med'
when 3 then 'Low'
end as PRIORITY
from MYTABLE t;
Author by
Kevin Pauli
Updated on March 15, 2020Comments
-
Kevin Pauli about 4 years
I want to select *, and not have to type out all individual columns, but I also want to include a custom column with a case statement. I tried the following:
select *, (case when PRI_VAL = 1 then 'High' when PRI_VAL = 2 then 'Med' when PRI_VAL = 3 then 'Low' end) as PRIORITY from MYTABLE;
But it is complaining that
ORA-00923: FROM keyword not found where expected