回 帖 发 新 帖 刷新版面

主题:這個sQL么寫啊﹖

我现已有了两个表: 
出货表: 
品名 数量 
电脑 11 
电机 22 
电脑 10 
书   200 


进货表 
品名 数量 
电机 5 
电机 100 
电脑 500 
书 200 
书 2000 

我想得出一个新表:库存表 得出结果如下: 
品名 出数量 进数量 库存 
电脑  21    500    479 
电机  22    105    87 
书   2200   200    2000 

我的思路是 
出货表,进货表 用 group by子句来分类汇总,库存表用inner join 或outer join 来两表合一.可我太菜,写不出来,恳请高手给我帮助。

回复列表 (共2个回复)

沙发

select A.*,b.sum2,(b.sum2-a.sum1) as 库存 from 
(select 品名,sum(数量) as sum1 from 出货表 group by 品名) as A inner join 
(select 品名,sum(数量) as sum2 from 进货表 group by 品名) as B on
A.品名=B.品名

板凳


謝謝你讓我的設想成為現實﹐但新的問題又來了﹐

使用 "inner join"只要在"A.品名=B.品名"的情況下才可以。

如果我 进货表 進一個貨﹐但沒有出過一次貨(在出貨表內沒有記錄)﹐

這樣﹐庫存表 就反映不來 。

請您再次援手。

我来回复

您尚未登录,请登录后再回复。点此登录或注册