根据业务需求写出大概的sql:
select datepart(month,[Date]) 月份,users.[name] 业务员,count(users.[name]) 数量,t.[Description] 类别 from Quo_Standardcost inner join users on BusinessId=users.id inner join (select UserId,[Description] from JobType inner join JobTypeDetail on ParentId=JobType.Id) AS t ON BusinessId=t.UserId group by datepart(month,[Date]),t.[Description],name order by t.[Description]
最终的结果是
中间写入临时表,比较好操作 主要是没办法 SQL SERVER 2000版本低呀 否则就用with了
第二步:
按月份,业务员,类别汇总吧
select 业务员,类别, 一月=isnull(sum(case 月份 when '1' then 数量 end),0), 二月=isnull(sum(case 月份 when '2' then 数量 end),0), 三月=isnull(sum(case 月份 when '3' then 数量 end),0), 四月