У меня есть несколько временных таблиц, и я беру дату из каждой временной таблицы и получаю ежемесячный счет. В конце я хочу создать одну большую таблицу, чтобы дать общее количество по месяцам для каждой категории. У меня математика работает, но я не могу понять, как перечислить один месяц и дать все данные за этот месяц.
Код SQL:
/*
Get Orders put in by staff
*/
if object_id('tempdb..#suborder') is not null drop table #suborder
select a.CustSID, a.enteredDateTime, a.EnteredByEmpSID
into #suborder
from Truck.Order a
where a.enteredDateTime >= '20180801'
and a.enteredDateTime <= '20180829'
if object_id('tempdb..#order') is not null drop table #order
select month(a.enteredDateTime) as CM,
count (a.CustSID) as 'Order Count'
into #order
from #suborder a
join emp.employee b on b.EmpSID = a.EnteredbyEmpSID
where b.EmpName = @name
group by month(a.enteredDateTime)
order by month(a.enteredDateTime)
/*
Get # of Notes entered by a Employee
*/
if object_id('tempdb..#subnote') is not null drop table #subnote
select a.custSID, a.EnteredByEmpSID, a.EntryDateTime
into #subnote
from doc.storage a
where a.EntryDateTime >= '20180801'
and a.EntryDateTime <= '20180930'
and a.signedbyStaffSID is not null
if object_id('tempdb..#note') is not null drop table #note
select month(a.EntryDateTime) as CM,
count (a.custSID) as 'Note Count'
into #note
from #subnote a
join emp.employee b on b.EmpSID = a.EnteredbyEmpSID
where b.EmpName = @name
group by month(a.EntryDateTime)
order by month(a.EntryDateTime)
/*
Join all the counts together and sum total workload
*/
SELECT o.CM,
n.CM,
o.[Order Count] + n.[Note Count] [Total Workload]
FROM #order o
cross join #note n
Мой конечный результат, я бы хотел:
CM Order Count Note Count Total Workload
8 15 30 45
9 17 25 42
В настоящее время я получаю:
CM CM Order Count Note Count Total Workload
8 8 15 30 45
9 9 17 25 42