请教一条SQL语句!关于统计!!急急急!!!

lvshijin 2008-10-29 11:52:33
日期 来电 去电
2008-09-22 0 1
2008-09-22 1 0
2008-09-23 0 1
2008-09-23 0 1
2008-10-29 1 0

0否 1是

要统计结果
日期 状态 次数
2008-09-22 来电 1
2008-09-22 去电 1
2008-09-23 去电 2
2008-10-29 来电 1
...全文
55 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lvshijin 2008-10-29
知道了谢谢大家!
回复
lvshijin 2008-10-29
我试一试啊
回复
水族杰纶 2008-10-29
declare @t table(日期 datetime,  来电 int,    去电 int) 
insert @t select '2008-09-22', 0, 1
insert @t select '2008-09-22', 1, 0
insert @t select '2008-09-23', 0, 1
insert @t select '2008-09-23', 0, 1
insert @t select '2008-10-29', 1, 0
select 日期,状态,count(1) as 次数
from (
select 日期,N'来电' as 状态 from @t where 来电=1
union all
select 日期,N'去电' as 状态 from @t where 去电=1
) as t
group by 日期,状态
/*
日期 状态 次数
------------------------------------------------------ ---- -----------
2008-09-22 00:00:00.000 去电 1
2008-09-23 00:00:00.000 去电 2
2008-09-22 00:00:00.000 来电 1
2008-10-29 00:00:00.000 来电 1

(影響 4 個資料列)
*/
回复
dawugui 2008-10-29
select 日期 , 状态 = '来电' , sum(来电) 次数 from tb group by 日期 
union all
select 日期 , 状态 = '去电' , sum(去电) 次数 from tb group by 日期
order by 日期,状态
回复
Yang_ 2008-10-29
select 日期,状态,count(1) as 次数 
from (
select 日期,'来电' as 状态 from tab where 来电=1
union all
select 日期,'去电' as 状态 from tab where 去电=1
) as t
group by 日期,状态

回复
ws_hgo 2008-10-29
等下
回复
Yang_ 2008-10-29
select 日期,状态,count(1) as 次数 
from (
select 日期,'来电' as 状态 from tab where 来电=1
union all
select 日期,'去电' as 状态 from tab where 去电=1
) as t
group by 日期,状态

回复
子陌红尘 2008-10-29
select 
日期,状态,次数=sum(次数)
from
(select 日期,状态='来电',次数=来电 from 表 union all select 日期,状态='去电',次数=去电 from 表) t
group by
日期,状态
回复
子陌红尘 2008-10-29
select 日期,状态='来电',sum(来电) from 表 group by 日期
union all
select 日期,状态='去电',sum(去电) from 表 group by 日期
order by 日期,状态
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-10-29 11:52
社区公告
暂无公告