/* case 函數*/
--對欄位作CASE的判斷。
SELECT s.[std_name] + CASE p.[addr] when '新竹市' then '市民' else '訪客' end
,p.[addr]
from [personal] p,[score]
s
where p.[std_num]=s.[std_num]
--對欄位下條件作CASE的判斷。
SELECT s.[std_name] + CASE when p.[addr] like '新竹%' then '在地人' else '觀光客' end
,p.[addr]
from [personal] p,[score]
s
where p.[std_num]=s.[std_num]
SELECT [std_num]
,[std_name]
,[CO]
,[DB]
,[SP]
,[TD]
,[judgment]
,總成績=co+db+sp+td
,本次考試表現=case
when co+db+sp+td>=360 then '非常好!'
when co+db+sp+td>=320 then '再加油!'
else '太混了!' end
FROM [CSIE98].[dbo].[score]
--對排序作CASE的判斷。
SELECT [員工編號]
,[姓名]
,[職稱]
,[性別]
,[主管]
,[出生日期]
,[任用日期]
,[區域號碼]
,[地址]
,[分機號碼]
FROM [CH11範例資料庫].[dbo].[員工]
ORDER BY CASE [性別] when
'男' then [出生日期] else [任用日期] end
話說,
CASE 函數可以使用在排序條件上,這點有令我意外。
因為我還真不知道可以這樣子用呢!
沒有留言:
張貼留言