表和数据:
create table fnd_user(
user_sid number(10) primary key,
user_username varchar(50),
user_password varchar(50),
user_phone number(15),
user_work_number number(15)
);
1.简单的用法和输出结果:
select user_username,user_password,user_phone,
case user_password
when 'jack1' then user_phone
when 'jack2' then user_phone + 1
when 'jack3' then user_phone + 2
when '12344' then user_phone + 3
else user_phone
end "xxx"
from fnd_user;
解析:
2.常用的用法和输出结果:
select user_username,user_password,user_work_number,
case when user_work_number = 1 then 10
when user_work_number + 1 > 1 then 20
else user_work_number
end "xxx"
from fnd_user;
解析:
PS:
经过尝试,第一种方式的when之后的判断条件是不可以进行很多操作的,比如计算操作的 + , - , * , / , = 之类的,但是第二种可以,所以一般情况下都是使用第二种方式去写语句.