有四个表A,B,C,D
A表为商品分类,表结构如下
id name
1 电子类
2 服务类
3 虚拟类
B表为商品名称和价格,其中AID代表商品分类ID
id Aid name price
1 1 电脑 3000
2 1 鼠标 30
3 1 键盘 20
4 2 维修 50
5 3 点卡 30
C表为销售单据主表
id custom account
1 张三 3080
2 李四 80
D为单据明细表,即客户都买了什么东西,bid代表销售单主表的ID ,mid代表商品ID
id bid mid account
1 1 1 3000 --张三买了一台电脑
2 1 4 50 --张三购买了维修服务
3 1 2 30 --张三买了一个鼠标
4 2 4 50 --李四买了维修服务
5 2 3 30 --李四买了一个键盘
现在要求制作一张明细表,要求按照单据主表显示行,商品分类在购买的商品前方显示,并显示出汇总数,商品名以列的形式表现出来,列的值就是购买商品的金额.
这张表做完应该是下面这样
客户名 电子类 电脑 键盘 鼠标 服务类 维修 虚拟类 点卡
张三 3020 3000 30 50 50
李四 30 30 50 50
难点在于商品名称和购买的东西不固定.
求这个报表制作的方法 .SQL语句 存储过程 视图 什么方式都行 只要能做出来就行
数据库类型是 SQL SERVER 2008
...收起
create view v_e as
select c.custom,a.name proname,sum(d.account) as account
from a,b,c,d where a.id=b.aid and c.id=d.bid and d.mid=b.id
group by c.custom,a
...全文