17 March Assignment Case When
17 March Assignment Case When
2> webminal.org
3> numbering filename
============
CASE WHEN#############
select e.*,
case
when sal < 90000 then 'low'
when sal < 800000 then 'avg'
else 'high'
end status
from employee e;
select e.*,
case
when country ='IN' then 'class_1'
when country ='US' then 'class_2'
else 'class_3'
end class
from employee e;
select e.*,
decode(country,'IN','class1','US','class2','class3') class
from employee e;
===============
else <default>
end as Status
from table e
SELECT *, CASE
WHEN SALARY < 4500 THEN (SALARY + SALARY * 25/100)
WHEN SALARY < 5000 THEN (SALARY + SALARY * 10/100)
END AS INCREMENT FROM CUSTOMERS;
=========================
t1
Cat1
AVG
GOOD
AZ
BAD
NEO
AVG
AVG
NEO
CAT1
select *
from table
order by
case when t1='NEO' then 1
when t1='Cat1' then 2
when t1='BAD' then 3
when t1='AVG' then 4
when t1='Good' then 5
else 6
end
==============================
dept gender....
IT F abc...
IT M
IT F
IT M
IT M
CS M
CS M
o/p
IT F 1
IT M 3
CS F 0
CS M 2
SELECT DEPT,GENDER,COUNT(1)
FROM DEPT TABLE
GROUP BY DEPT,GENDER;
o/p
dept female_cnt male_cnt
IT 1 3
CS 0 2
---