SqlServer 难题 求解
来源:百度知道 编辑:UC知道 时间:2024/06/30 00:00:14
ID SF DT
1 胜 2006-06-12 00:00:00.000
2 胜 2006-06-12 00:00:00.000
3 负 2006-06-13 00:00:00.000
4 负 2006-06-12 00:00:00.000
5 胜 2006-06-11 00:00:00.000
6 负 2006-06-12 00:00:00.000
7 负 2006-06-13 00:00:00.000
8 胜 2006-06-12 00:00:00.000
想通过一条或一段语句 统计出某天的胜负数各是多少
例如:
日期 胜 负
2006-06-11 00:00:00.000 1 0
2006-06-12 00:00:00.000 3 2
2006-06-13 00:00:00.000 0 2
谢谢高手了!!!!!
第一组数据的列名分别为 ID SF DT
第二组列名分别为 日期 胜 负
希望高手看的懂 第二组的第一行数据前边全是日期 1是'胜'列下的 0是'负'列下的
select a.DT as 日期,a.count(SF) as 胜,b.count(SF) as 负 into 新表
from 旧表 as a,旧表 as b
where a.DT=b.DT and a.SF='胜' and b.SF='负'
group by a.DT
新……
期待答案
=.=这个不算难题了,不过分有点少....把下面的复制到查询分析器里执行就OK...
--删除table
Drop table #temp
--创建表并插入数据:
create table #temp([ID] [numeric](18, 0) IDENTITY (1, 1) NOT NULL
,[SF] varchar(5) null
,[DT] datetime null )
insert into #temp (SF,DT) values ('胜','2006-06-12 00:00:00.000')
insert into #temp (SF,DT) values ('胜','2006-06-12 00:00:00.000')
insert into #temp (SF,DT) values ('负','2006-06-13 00:00:00.000')
insert into #temp (SF,DT) values ('负','2006-06-12 00:00:00.000')
insert into #temp (SF,DT) values ('胜','2006-06-11 00:00:00.000')
insert into #temp (SF,DT) values ('负','2006-06-12 00:00:00.000')
i