不好意思,又是select语句的问题......

hbyhwxb 2002-08-22 06:16:34
表结构如下:(假定表名为A)

class1,class2,itemno,amount
即货品属于class2,但class2又属于class1,每个货品有销售金额。即索引定义为(
class1/class2/itemno)。 
假定示例数据为:
class1 class2 itemno amount

胶卷   柯达   001   100
胶卷   柯达   002   200
胶卷   富士   001   200
胶卷   富士   002   300
相机   理光   001   1000
相机   理光   002   1500
相机   美能达  001   2000
现在要实现下面的结果:

class amount percent
柯达    300 3/8
富士 500 5/8
胶卷 800 1 //注释,即在此产生胶卷的小计。
理光 2500 5/9
美能达 2000 4/9
相机 4500 1  //注释,即在此产生相机的小计。

我这样来写却总通不过,请各位指点:
select class1,class2,sum(amount),sum(amount)/(select sum(amount) from A)
group by class2
compute sum(sum(amount)),sum(sum(amount)/(select sum(amount) from A)) by class1
sort by class1,class2
...全文
40 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hbyhwxb 2002-08-22
  • 打赏
  • 举报
回复
好吧,我试试,谢谢supsuccess(口气不小)。
supsuccess 2002-08-22
  • 打赏
  • 举报
回复
这样:
select t1.class1,t1.class2,sum(t1.amount)as comp1,sum(t1.amount)*0.1*10/max(t2.amount) as comp2 from a t1,(select class1,sum(amount) as amount from a group by class1)t2
where t1.class1=t2.class1
group by t1.class1,t1.class2
order by t1.class1,t1.class2
compute sum(sum(t1.amount)),sum(sum(t1.amount)*0.1*10/max(t2.amount)) by t1.class1
自己加ROUND()函数吧
supsuccess 2002-08-22
  • 打赏
  • 举报
回复
select class1,class2,min(comp1),min(comp2) from
(select t1.class1,t1.class2,sum(t1.amount)as comp1,sum(t1.amount)*0.1*10/max(t2.amount) as comp2 from a t1,(select class1,sum(amount) as amount from a group by class1)t2
where t1.class1=t2.class1
group by t1.class1,t1.class2 )t3
group by class1,class2
order by class1,class2
compute sum(min(comp1)),sum(min(comp2)) by class1



hbyhwxb 2002-08-22
  • 打赏
  • 举报
回复
不好意思,由于急写错了一些,全部语句如下:

select class1,class2,sum(amount),sum(amount)/(select sum(amount) from A)
from A
group by class2
order by class1,class2
compute sum(sum(amount)),sum(sum(amount)/(select sum(amount) from A)) by class1
hbyhwxb 2002-08-22
  • 打赏
  • 举报
回复
大家为什么不来关注一下呢,我可以再加分的。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧