最近初學SQL ,'碰上問題(附上我目前所寫的,非常獻醜 )
http://ithelp.ithome.com.tw/upload/images/20150107/2015010715063754acdafd74485_thumb.png
想請問要如何寫出來
感謝大家不吝嗇指教
題目如下
輸入某一個日期,可自動計算出當日各產品所生產的瓶數
三個資料表為 舊工作指令、生產線檔、產品基本資料
從這三個資料表中顯示出畫面如下列順序
生產線
年
月
日
AB實產瓶數(=A實產瓶數+B實產瓶數)
A實產瓶數(=液位瓶數 + 凹瓶瓶數 + 收縮膜瓶數 + 瓶身黑點瓶數 + 口味轉換瓶數 +
封口換蓋瓶數 + 口味異常瓶數)
B實產瓶數 (=每箱數量*實際箱數+良品不足瓶數)
iT邦幫忙MVPwiselou提到:
老人家眼睛不好
SELECT 生產線檔.生產線名稱 as 生產線,
substring(舊工作指令.工作指令日期,1,4) as 年,
substring(舊工作指令.工作指令日期,6,2) as 月,
substring(舊工作指令.工作指令日期,9,2) as 日,
sum((舊工作指令.液位瓶數+舊工作指令.凹瓶瓶數+舊工作指令.收縮膜瓶數+舊工作指令.瓶身黑點瓶數+舊工作指令.口味轉換瓶數+舊工作指令.封口換蓋瓶數+舊工作指令.口味異常瓶數)+(舊工作指令.實際箱數*產品基本資料.每箱數量+舊工作指令.良品不足瓶數)) as AB實產瓶數,
sum(舊工作指令.液位瓶數+舊工作指令.凹瓶瓶數+舊工作指令.收縮膜瓶數+舊工作指令.瓶身黑點瓶數+舊工作指令.口味轉換瓶數+舊工作指令.封口換蓋瓶數+舊工作指令.口味異常瓶數) as A實產瓶數,
sum(舊工作指令.實際箱數*產品基本資料.每箱數量+舊工作指令.良品不足瓶數) as B實產瓶數
結果範例如下圖:
若要再區分產品,在group by新增產品編號即可。