日期:2014-05-19  浏览次数:20425 次

行和列都是动态的,这个报表效果该怎么写?
--要求统计每个部门每个员工每款车型的销售数量
create   table   #tb_emp(     --员工表
ID   int     primary   key,
Nam   char(10),
DeptNam   varchar(20))

insert   #tb_emp   select   1, '张刚 ', '销售一部 '
union   all   select     2, '王西 ', '销售二部 '
union   all   select     3, '李飞 ', '销售三部 '
union   all   select     4, '张扬 ', '销售三部 '
union   all   select     5, '黄明 ', '销售四部 '
--------------------------------------------
create   table   #tb_car_typ(   --车型表
ID   int   primary   key,
Nam   varchar(20))

insert   #tb_car_typ   select   1, '1.6LX '
union   all   select   2, '1.8GL(新) '
union   all   select   3, '1.6GL '
union   all   select   4, '1.7HRVW '
union   all   select   5, '1.6IEST '
--------------------------------------------
create   table   #tb_car(   --车辆基本信息表
CarID   varchar(20)   primary   key,
CarTypID   int)

insert   #tb_car   select   '1001 ',1
union   all   select   '1002 ',5
union   all   select   '1003 ',3
union   all   select   '1004 ',1
union   all   select   '1005 ',4
union   all   select   '1006 ',3
union   all   select   '1007 ',1
--------------------------------------------
create   table   #tb_car_sale(   --销车表
CarID   varchar(20)   ,
EmpID   int,
primary   key(CarID,EmpID))

insert   #tb_car_sale   select   '1001 ',1
union   all   select   '1002 ',3
union   all   select   '1003 ',5
union   all   select   '1004 ',2
union   all   select   '1005 ',2
union   all   select   '1006 ',4
union   all   select   '1007 ',1
--------------------------------------------
期望结果:
  部门           姓名     1.6LX         1.8GL(新)         1.6GL         1.7HRVW         1.6IEST
销售一部     张刚         2                     0                     0                     0                   0
销售二部     王西         1                     0                     0                     1                   0
销售三部     李飞         0                     0                     0                     0                   1