select product_id,product_type_id,
case
when product_type_id=1 then 'Book'
when product_type_id=2 then 'Video'
when product_type_id=3 then 'DVD'
when product_type_id=4 then 'CD'
else 'Magazine'
end
from products
SELECT
CASE WHEN salary <= 500THEN '1'
WHEN salary > 500 AND salary <=600 THEN'2'
WHEN salary > 600 AND salary <=800 THEN'3'
WHEN salary > 800 AND salary <=1000 THEN '4'
ELSE NULL END salary_class, -- 别名命名
COUNT(*) FROM Table_A
GROUP BY
CASE
WHEN salary <= 500 THEN '1'
WHEN salary > 500 AND salary <=600 THEN'2'
WHEN salary > 600 AND salary <=800 THEN'3'
WHEN salary > 800 AND salary <=1000 THEN '4'
ELSE NULL END;
declare
v_sal ods_emp.sal%type;
v_msg varchar2(309);
begin
select sal into v_sal from ods_emp where empno=7369;
v_msg :=
case
when v_sal < 5000 then 'salary < 5000'
when v_sal > 5000 then '5000<= salary < 10000'
else 'salary >= 10000'
end;
dbms_output.put_line(v_sal ||','||v_msg);
end;
/