PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   疑難雜症區 (https://www.pcdvd.com.tw/forumdisplay.php?f=34)
-   -   SQL語法,謝謝! (https://www.pcdvd.com.tw/showthread.php?t=632918)

mor8 2006-07-01 03:57 PM

引用:
作者boaboa
select distinct產品代號.產品代號,產品資料表.產品名稱,sum(預估資料表.預估產品數量)as預估產品數量 ,sum(訂單資料表.訂單數量)as實際產品數量

from 產品資料表 inner join (預估資料表 inner join 訂單資料表 on 預估資料表.廠商代號=訂單資料表.廠商代號)on產品資料表.產品代號=預估資料表.產品代號

group by 產品代號.產品代號
order by 產品代號.產品代號

謝謝你的回答
此句看不太懂
distinct產品代號.產品代號
是不是要成這樣呢?
distinct產品資料表.產品代號
謝謝

mor8 2006-07-03 11:02 AM

引用:
作者穩ㄝ
搞不懂為什麼又要問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.產品代號

感謝穩兄高手的解答 :like:
終於試出來了
我的問題
似乎只能用"沒有group by"的那種方法才能成功。
如果用group by是可以執行,
但run出來的結果是錯的
sum的值被放大了數百倍
為什麼會被放大呢?

也感謝其他兄台的幫忙
由於工作繁忙
無法在試其他兄台的解答
實在不好意思

無論如何
謝謝大家 :)


所有的時間均為GMT +8。 現在的時間是04:47 PM.

vBulletin Version 3.0.1
powered_by_vbulletin 2026。