34,837
社区成员




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 個資料列)
*/
select 日期 , 状态 = '来电' , sum(来电) 次数 from tb group by 日期
union all
select 日期 , 状态 = '去电' , sum(去电) 次数 from tb group by 日期
order by 日期,状态
select 日期,状态,count(1) as 次数
from (
select 日期,'来电' as 状态 from tab where 来电=1
union all
select 日期,'去电' as 状态 from tab where 去电=1
) as t
group by 日期,状态
select 日期,状态,count(1) as 次数
from (
select 日期,'来电' as 状态 from tab where 来电=1
union all
select 日期,'去电' as 状态 from tab where 去电=1
) as t
group by 日期,状态
select
日期,状态,次数=sum(次数)
from
(select 日期,状态='来电',次数=来电 from 表 union all select 日期,状态='去电',次数=去电 from 表) t
group by
日期,状态