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-06-29 09:55 PM

SQL語法,謝謝!
 
我用的資料庫是sql server
三個資料表分別叫作
產品資料表(產品代號、產品名稱)
預估資料表(廠商代號、產品代號、預估產品數量)
訂單資料表(廠商代號、產品代號、訂單數量)
請問:
我要將此三個資料表合併
寫出一個報表
而報表要有下面這些欄位資料
產品代號、產品名稱、預估產品數量、訂單數量
謝謝

henryown 2006-06-30 09:41 AM

insert into newtable select o.產品代號, p.產品名稱, e.預估產品數量, o.訂單數量 from 產品資料表 p, 預估資料表 e, 訂單資料表 o where o.產品代號=p.產品代號 and o.產品代號=e.產品代號

不保證對,已經很久沒有寫了!

瘋狂火星人 2006-06-30 11:18 AM

select 的那段前後加個括弧.......

mor8 2006-06-30 02:13 PM

謝謝你們的回答
不好意思
我沒有說清楚
我的報表
主要是想看
某一個產品(產品資料表的產品代號是key,以此為主)
它的訂單和預估差多少
不知道這樣的sql要如何寫呢?

kec 2006-06-30 03:50 PM

引用:
作者mor8
謝謝你們的回答
不好意思
我沒有說清楚
我的報表
主要是想看
某一個產品(產品資料表的產品代號是key,以此為主)
它的訂單和預估差多少
不知道這樣的sql要如何寫呢?

沒有列出資料表的key的確是會讓人弄不清楚你的問題。
根據上面的說明,我猜'產品資料表'的key是'產品代號'、'預估資料表'的key是'廠商代號、產品代號'、'訂單資料表'的key是'廠商代號、產品代號'。

如果我想的key沒錯,那要用 sum() 和 group by 來做這個報表。

至於SQL怎麼寫,留給樓主當習題。 :)

mor8 2006-06-30 04:29 PM

引用:
作者kec
沒有列出資料表的key的確是會讓人弄不清楚你的問題。
根據上面的說明,我猜'產品資料表'的key是'產品代號'、'預估資料表'的key是'廠商代號、產品代號'、'訂單資料表'的key是'廠商代號、產品代號'。

如果我想的key沒錯,那要用 sum() 和 group by 來做這個報表。

至於SQL怎麼寫,留給樓主當習題。 :)

我就是因為不知道
所以才上來問
請教一下吧!
對高手來說
是很容易
對初學者來說
是很難的 :cry:

smball 2006-06-30 05:00 PM

select A.產品代號,產品名稱,預估產品數量,訂單數量,預估產品數量-訂單數量 as 差額
from 產品資料表 A
left join 預估資料表 B on A.產品代號=B.產品代號
left join 訂單資料表 C on A.產品代號=C.產品代號

mor8 2006-06-30 07:47 PM

引用:
作者smball
select A.產品代號,產品名稱,預估產品數量,訂單數量,預估產品數量-訂單數量 as 差額
from 產品資料表 A
left join 預估資料表 B on A.產品代號=B.產品代號
left join 訂單資料表 C on A.產品代號=C.產品代號

謝謝你的回答
我的問題可能要用到
group by及sum
以訂單來說
一家廠商可能下很多次的同一產品
而訂單的key是流水號
這樣的問題不知道會不會很難呢?
謝謝

liweiyang 2006-06-30 08:05 PM

引用:
作者kec
沒有列出資料表的key的確是會讓人弄不清楚你的問題。
根據上面的說明,我猜'產品資料表'的key是'產品代號'、'預估資料表'的key是'廠商代號、產品代號'、'訂單資料表'的key是'廠商代號、產品代號'。

如果我想的key沒錯,那要用 sum() 和 group by 來做這個報表。


至於SQL怎麼寫,留給樓主當習題。 :)


嗯~~看來KEY應該是這樣吧,要寫出來應該不難,
而且說難聽點的書上就找得到現成的

mor8 2006-06-30 09:22 PM

引用:
作者liweiyang
嗯~~看來KEY應該是這樣吧,要寫出來應該不難,
而且說難聽點的書上就找得到現成的

如果會的話
麻煩教一下
謝謝 :)


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

vBulletin Version 3.0.1
powered_by_vbulletin 2026。