Select (Select sum(收入数量) from 收入表 where 收入表.商品名 = 商品名) as 收入,
(Select sum(付出数量) from 付出表 where 付出表.商品名 = 商品名) as 付出,
收入 - 付出 as 库存
from 商品表
(Select sum(付出数量) from 付出表 where 付出表.商品名 = 商品名) as 付出,
收入 - 付出 as 库存
from 商品表
解决方案 »
- 急切想知道数据库副本的创建,及其应用,以及保存到母本方法?
- 求隐藏打开IE的话 如何点击指定的坐标????[2]
- ISNULL 與 RECORDCOUNT屬性
- 现在想做版本控制,可是VSS不支持,StarTeam又不会
- 在知道组件的名字,类型时,如何使用字符变量使用该组件?
- ☆☆☆☆☆☆☆毕业1.5年,上班1.5年,写程序1.5年,明年是本命年也是我女朋友的本命年,所以不愿意四处乱窜了……
- 纯winsock实现的验证发信的问题。
- 高手请进来,帮帮忙!dbgrideg的打印问题——打印预览是数据网格全部挤在了一起!
- wingate不能共享上网,在网等待
- 我已经动态增加了一数据表的列,我想让它自动在DBGRID中显示出来,并且字段名要中文,如何在程序中编写这个过程呢?
- 请问socket控件里RecievBuf方法里的参数Buf是什么类型的?
- 这是一个经常会碰到的问题,看谁能告诉我。
BTW,如分数不够,请给个话。
我能否问一下,你是用的什么作为数据库驱动的?
这种SQL语句在SQL SERVER中是完全正确的,不知道你用的数据库
驱动与数据查询是不是支持中文的,再看 一下吧!
select ((select isnull(sum(收入数量),0) from 收入表 where 收入表.商品名 = 商品名)-(select isnull(sum(付出数量),0) from 付出表 where 付出表.商品名 = 商品名)) as 库存。
这是最佳的解决办法,如果允许负库存的话,如果不允许负库存自己加个判断。
我想阿海的语句的思路可能是这样的,从商品名表中选出所有商品,针对每一种商品统计其总收入和总付出,然后算出库存,是这样吧?
我用:
Select (Select sum(收入数量) from 收入表 where 收入表.商品名 ="商品a") as 收入,
(Select sum(付出数量) from 付出表 where 付出表.商品名 ="商品a") as 付出,
收入 - 付出 as 库存
from 商品表 来统计某一品种没有任何问题,但统计所有商品时(用阿海提供的),收入、付出,库存都是空的,不知道是什么问题,另外,我的各个表中都有示例数据。
请问商品表,从何而来,此表要有哪些字段?
from 收入表 LEFT OUTER JOIN 付出表 on (收入表.商品名=付出表.商品名)这样应该可以得到一张商品库存列表.
from 收入表 LEFT OUTER JOIN 付出表 on (收入表.商品名=付出表.商品名)
GROUP BY 商品名