create table #tmp(rq varchar(10),shengfu nchar(1))
insert into #tmp values(’2005-05-09′,’胜’)
insert into #tmp values(’2005-05-09′,’胜’)
insert into #tmp values(’2005-05-09′,’负’)
insert into #tmp values(’2005-05-09′,’负’)
insert into #tmp values(’2005-05-10′,’胜’)
insert into #tmp values(’2005-05-10′,’负’)
insert into #tmp values(’2005-05-10′,’负’)
select rq, sum(case when shengfu=’胜’ then 1 else 0 end)’胜’,sum(case when shengfu=’负’ then 1 else 0 end)’负’ from #tmp group by rq
效果:
rq 胜 负
2005-05-09 2 2
2005-05-10 1 2
2.请教一个面试中遇到的SQL语句的查询问题
表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
——————————————
select (case when a>b then a else b end ),
(case when b>c then b esle c end)
from table_name