趣味無從﹕一個數據結構與算法問題 (50分)

  • 主题发起人 主题发起人 aier
  • 开始时间 开始时间
A

aier

Unregistered / Unconfirmed
GUEST, unregistred user!
有三個表﹕
1.產品單價設置表
單價編號 產品名稱 工序 單價 生效日期
如﹕FS0001 A015 磨邊 0.015 2004/1/8
FS0002 A048 刷膠 0.025 2004/1/16
//問題1﹕同一種"單價編號"里"單價"會改變﹐比如
FS0001 A015 磨邊 0.018元/雙 2004/1/20﹐也就是說在2004/1/20之前FS0001的"單價"就是0.015 ﹐而2004/1/20之后就是0.018﹔應該如何解決?表結構需要改變嗎?有沒有更好的處理方法?謝謝﹗
2.生產日報表
生產編號 生產日期
如﹕CD04020001 2004/02/25
CD04020002 2004/02/26
//"生產編號"為主鍵
3.生產明細表
單價編號 產量 生產編號
如﹕FS0001 5000 CD04020001
FS0002 800 CD04020001
FS0001 1000 CD04020002
//根據以上資料統計每張生產日報表的合計金額
結果如下格式﹕
生產編號 合計金額
CD04020001 5000*0.015+800*0.025
CD04020002 1000*0.015
 
首先生产日报表没有必要,生产日期应该和产量并在一个表里,如果产品单价和生产数量
不是随时输入互相对应的,那就应该把产品单位设置表变为产品单价设置流水表,这样
单价和数量可以随时输入,计算金额时,只需在产品单价设置流水表中查询他的计算价格就行了。
 
表结构不用改。
select a.生产编号,a.产量*b.单价 as 合计金额 into #temptable from 生产明细表 a,产品单价设置表 b where a.单价编号=b.单价编号
select distinct 生产编号,合计金额 from #temptable
 
对不起,错了
select 生产编号,sum(合计金额) from #temptable group by 生产编号
 
to:blyb
謝謝你的回復﹗很抱歉﹐我之前表達有誤﹗其實我的真正的問題以上(已提出)﹗希望你多多指教﹗
 
后退
顶部