declare @t table ( [Date] DateTime, Amount Decimal, [Type] VarChar(50) )
insert @t
select '2009.01.02', 10000, 'Приход'
union all select '2009.01.02', 1000, 'расход'
union all select '2009.01.03', 1000, 'расход'
union all select '2009.01.04', 1000, 'расход'
union all select '2009.01.05', 1000, 'расход'
union all select '2009.01.06', 1000, 'расход'
union all select '2009.01.07', 1000, 'расход'
union all select '2009.01.07', 1000, 'расход'
union all select '2009.01.07', 1000, 'расход'
union all select '2009.01.08', 12000, 'Приход'
union all select '2009.01.09', 5000, 'расход'
union all select '2009.01.14', 7000, 'Приход'
union all select '2009.01.15', 10000, 'расход'
union all select '2009.01.20', 15000, 'Приход'
union all select '2009.01.21', 6000, 'расход'
select
[Inc].[Date] As [Дата прихода]
, [Inc].[Amount] As [Сумма прихода]
, [Out].[Date] As [Дата расхода]
, [Out].[Amount] As [Сумма расхода]
from (
select
[Date], Sum([Amount]) as [Amount]
from @t
where [Type] = 'Приход'
group by [Date]
) Inc
full outer join (
select
[Date], Sum([Amount]) as [Amount]
from @t
where [Type] = 'Расход'
group by [Date]
) [Out] on Inc.[Date] = [Out].[Date]