表和數據:
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之後的判斷條件是不可以進行很多操作的,比如計算操作的 + , - , * , / , = 之類的,但是第二種可以,所以一般情況下都是使用第二種方式去寫語句.