![]() |
||
|
Major Member
![]() 加入日期: Nov 2004 您的住址: 竹北
文章: 206
|
引用:
select 產品代號.產品代號,產品資料表.產品名稱,預估資料表.預估產品數量,訂單資料表.訂單數量 from 產品資料表 inner join (預估資料表 inner join 訂單資料表 on 預估資料表.廠商代號=訂單資料表.廠商代號)on產品資料表.產品代號=預估資料表.產品代號 我只教你如何合併.. 因為我不是你公司的人 我不知道你要查訊是什麼結果.. 合併語法我一陣子沒用了..你試試看吧.. 我手邊沒書..也不敢跟你確定正確性.. 如果錯誤別怪我喔.. 如果可以你把問題和需求說清楚一點..我如果會就幫你一下..
__________________
Put your hands on your conscience! And you say:you accept that! 此文章於 2006-06-30 09:35 PM 被 boaboa 編輯. |
||||||||
|
|
|
Major Member
![]() 加入日期: Nov 2004 您的住址: 竹北
文章: 206
|
select 產品代號.產品代號,產品資料表.產品名稱,sum(預估資料表.預估產品數量)as預估產品數量 ,sum(訂單資料表.訂單數量)as實際產品數量
from 產品資料表 inner join (預估資料表 inner join 訂單資料表 on 預估資料表.廠商代號=訂單資料表.廠商代號)on產品資料表.產品代號=預估資料表.產品代號 group by 產品代號.產品代號 這樣呢??(應該是錯的吧..) 我是有點想加 distinct 會的人也出來教一下吧,, 因為小弟也很有興趣...(在等世界盃前的遊戲∼)
__________________
Put your hands on your conscience! And you say:you accept that! |
||
|
|
|
Senior Member
![]() ![]() ![]() 加入日期: Dec 2000 您的住址: 休伯利安艦橋
文章: 1,388
|
沒有明確的Table Schema跟報表要呈現的欄位說明,根本就沒辦法下手....
要大家幫忙,你還是把需求說的明確點吧.. ![]()
__________________
![]() ~三十年來尋刀劍,幾回落葉又抽枝,自從一見桃花後.直至如今更不疑~ 燦坤卡號:34951536 My Blog:http://blog.xuite.net/eric15820/devileric |
|
|
|
Major Member
![]() 加入日期: Oct 2005 您的住址: 淡水
文章: 131
|
select p.產品代號, p.產品名稱,
(select sum(s.預估產品數量) from 預估資料表 as s where s.產品代號=p.產品代號) as 預估數量, (select sum(o.訂單數量) from 訂單資料表 as o where o.產品代號=p.產品代號) as 訂單量 from 產品資料表 as p order by p.產品代號 |
|
|
|
Major Member
![]() 加入日期: Oct 2005 您的住址: 淡水
文章: 131
|
搞不懂為什麼又要問key又要問table schema的....以他的問題來說....
即使不知道應該也可以做出來吧.... 用group的方式 select p.產品代號, p.產品名稱, sum(s.預估產品數量) as 預估產量, sum(o.訂單數量) as 訂單量 from 產品資料表 p left outer join 預估資料表 as s on s.產品代號=p.產品代號 left outer join 訂單資料表 as o on o.產品代號=p.產品代號 group by p.產品代號 order by p.產品代號 不用group的方式 select p.產品代號, p.產品名稱, (select sum(s.預估產品數量) from 預估資料表 as s where s.產品代號=p.產品代號) as 預估數量, (select sum(o.訂單數量) from 訂單資料表 as o where o.產品代號=p.產品代號) as 訂單量 from 產品資料表 as p order by p.產品代號 |
|
|
|
Major Member
![]() 加入日期: Feb 2004 您的住址: Terran Empire
文章: 283
|
引用:
把問題和Table Schema講清楚,大家才好幫你。像原先並沒有提到“訂單的key是流水號”,大家只能在那兒瞎猜,就算寫出了SQL程式,也不一定能在你的資料庫中正確執行。 就是希望你能早日成為高手,所以才說“SQL留給樓主當習題”。直接給答案,你省事,我也省事,但你就失去了一次學習的機會了。 先讀一下書上sum() 和 group by的說明和範例,想一想資料表間的關連。 如果你覺得三個資料表太複雜,先想如何用兩個資料表做出某個產品的訂單數量,然後如何再加入第三個資料表做出某個產品的預估訂單數量。 |
|
|
|
|
Senior Member
![]() ![]() ![]() 加入日期: Dec 2000 您的住址: 休伯利安艦橋
文章: 1,388
|
引用:
Table Schema敘述不明確,又沒有ERD或Class Diagram,如何了解這些Entity間的關連?這樣盲目的寫出SQL,說實話猶如大海撈針,矇對了算運氣... ![]()
__________________
![]() ~三十年來尋刀劍,幾回落葉又抽枝,自從一見桃花後.直至如今更不疑~ 燦坤卡號:34951536 My Blog:http://blog.xuite.net/eric15820/devileric |
|
|
|
|
Major Member
![]() 加入日期: Feb 2004 您的住址: Terran Empire
文章: 283
|
引用:
我想您可能要為樓主解釋一下為什麼要用 outer join 的原因,樓主大概會對用 outer join 感到困惑。(純是個人推測,如果樓主已經知道用 outer join 的原因,請見諒。) |
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
我是希望產生像下圖一樣的報表
第一個欄位是個key(產品代號) 由於手上沒有公司的資料庫 所以也無法測試 謝謝大家 PS.第三個欄位和第四個欄位,一定要用sum 此文章於 2006-07-01 09:00 AM 被 mor8 編輯. |
|
|
|
Major Member
![]() 加入日期: Nov 2004 您的住址: 竹北
文章: 206
|
select distinct產品代號.產品代號,產品資料表.產品名稱,sum(預估資料表.預估產品數量)as預估產品數量 ,sum(訂單資料表.訂單數量)as實際產品數量
from 產品資料表 inner join (預估資料表 inner join 訂單資料表 on 預估資料表.廠商代號=訂單資料表.廠商代號)on產品資料表.產品代號=預估資料表.產品代號 group by 產品代號.產品代號 order by 產品代號.產品代號
__________________
Put your hands on your conscience! And you say:you accept that! |
|
|