总结一个sql列基于两列另一个带有条件的表

时间:2014-07-29 10:21:52

标签: asp.net sql

teststock

type date   time product qty
in  26-Apr  6.5 vs29    10
out 26-Apr  5.4 vs29    2
in  26-Apr  8.9 vs29    5
out 25-Apr  7.2 vs29    10
in  27-Apr  5.2 vs29    5

product list

id  product inward  outward stock
1   vs29    20      12      8

我需要asp.net的sql语句。

  1. 根据
  2. 中的类型从数量中加入产品列表中的内向值
  3. 根据类型输出从数量中总结产品列表中的外观
  4. 最后减去向内 - 向外

1 个答案:

答案 0 :(得分:0)

我不确切地知道你想要什么,但我想你想做这样的事情:

select a.product , sum(a.inward) inward ,sum(a.outward) outward , sum(a.inward) - sum(a.outward) stock   from (
select product , case when type = 'in' then qty else 0 end inward , 
case when type = 'out' then qty else 0 end outward
from test_stock) a
group by a.product

这是关于sql查询的sqlfiddle链接:http://sqlfiddle.com/#!6/65f06e/5