![]() |
||
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
SQL語法,謝謝!
我用的資料庫是sql server
三個資料表分別叫作 產品資料表(產品代號、產品名稱) 預估資料表(廠商代號、產品代號、預估產品數量) 訂單資料表(廠商代號、產品代號、訂單數量) 請問: 我要將此三個資料表合併 寫出一個報表 而報表要有下面這些欄位資料 產品代號、產品名稱、預估產品數量、訂單數量 謝謝 |
|||||||
|
|
|
Amateur Member
![]() 加入日期: Sep 2003
文章: 31
|
insert into newtable select o.產品代號, p.產品名稱, e.預估產品數量, o.訂單數量 from 產品資料表 p, 預估資料表 e, 訂單資料表 o where o.產品代號=p.產品代號 and o.產品代號=e.產品代號
不保證對,已經很久沒有寫了! |
||
|
|
|
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Jul 2004 您的住址: 無止盡的文件地獄~~
文章: 4,714
|
select 的那段前後加個括弧.......
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
謝謝你們的回答
不好意思 我沒有說清楚 我的報表 主要是想看 某一個產品(產品資料表的產品代號是key,以此為主) 它的訂單和預估差多少 不知道這樣的sql要如何寫呢? |
|
|
|
Major Member
![]() 加入日期: Feb 2004 您的住址: Terran Empire
文章: 283
|
引用:
沒有列出資料表的key的確是會讓人弄不清楚你的問題。 根據上面的說明,我猜'產品資料表'的key是'產品代號'、'預估資料表'的key是'廠商代號、產品代號'、'訂單資料表'的key是'廠商代號、產品代號'。 如果我想的key沒錯,那要用 sum() 和 group by 來做這個報表。 至於SQL怎麼寫,留給樓主當習題。 ![]() |
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
引用:
我就是因為不知道 所以才上來問 請教一下吧! 對高手來說 是很容易 對初學者來說 是很難的 ![]() |
|
|
|
|
Major Member
![]() 加入日期: Apr 2005 您的住址: Taipei
文章: 214
|
select A.產品代號,產品名稱,預估產品數量,訂單數量,預估產品數量-訂單數量 as 差額
from 產品資料表 A left join 預估資料表 B on A.產品代號=B.產品代號 left join 訂單資料表 C on A.產品代號=C.產品代號 |
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
引用:
謝謝你的回答 我的問題可能要用到 group by及sum 以訂單來說 一家廠商可能下很多次的同一產品 而訂單的key是流水號 這樣的問題不知道會不會很難呢? 謝謝 |
|
|
|
|
Basic Member
加入日期: Apr 2004
文章: 23
|
引用:
嗯~~看來KEY應該是這樣吧,要寫出來應該不難, 而且說難聽點的書上就找得到現成的 |
|
|
|
|
Major Member
![]() 加入日期: Aug 2005
文章: 237
|
引用:
如果會的話 麻煩教一下 謝謝 ![]() |
|
|
|