SqlServer系列笔记——case when 语句
CASE用法
CASE
WHEN condition1 THEN returnvalue1
WHEN condition 2 THEN returnvalue2
WHEN condition 3 THEN returnvalue3
ELSE defaultreturnvalue
END
相当于if…else…else….
SELECT FName, FWeight,
(CASE
WHEN FWeight<40 THEN ‘瘦瘦'
WHEN FWeight>50 THEN ‘肥肥'
ELSE 'ok'
END)
as isnormal
FROM T_Person
create table bs
(
bsname char(20),
bsflag char(20),
bstime datetime
)
insert bs values('火箭','胜','2008-01-10')
insert bs values('火箭','负','2008-01-11')
insert bs values('火箭','胜','2008-01-10')
insert bs values('公牛','负','2008-01-10')
insert bs values('公牛','胜','2008-01-11')
insert bs values('公牛','负','2008-01-10')
select * from bs
select bsname,胜=sum(case when bsflag= '胜' then 1 else 0 end),
负=sum(case when bsflag='负' then 1 else 0 end)
from bs group by bsname