一个进仓表,一个出仓表,仓库物料存仓量统计问题
进仓表Instorage
type color number
a red 10
a green 15
a red 20
b blue 18
b green 8
出仓表OutStorage
type color number
a red 20
a green 15
b blue 10
c red 8
现在要求统计出相同品种相同颜色的库存量是多少.
要把Instorage中相同品种相同颜色的数量加起来再减去OutStorage中相同品种相同颜色的数量,如果Instorage中有的,OutStorage中没有的,显示的库存量为正数,如果OutStorage表中有,而Instroage中没有,则显示库存量为负数.
------解决方案--------------------问题太简单了吧?就怕拿不到分
留个位置,写SQL去
------解决方案--------------------select a.type,a.color ,sum(number) 'number '
from
(
select type,color,number from Instorage
union all
select type,color,-number 'number ' from OutStorage
) a
group by type,color
type color number
---------- ---------- -----------
b blue 8
a green 0
b green 8
a red 10
c red -8
(所影响的行数为 5 行)
------解决方案--------------------楼上的方法比我好..动作比我快..
------解决方案--------------------佩服楼上。
------解决方案--------------------谁能帮我解释一下
我没怎么看懂啊
------解决方案--------------------select a.type,a.color ,sum(number) 'number '
from
(
select type,color,number from Instorage
union all
select type,color,-number 'number ' from OutStorage
) a
group by type,color
having sum(number) <> 0
------解决方案--------------------UP