关于表的连接

yczhengyong 2003-11-07 09:58:11
我有三个表:入库表,出库表,库存表
入库表 出库表
品名 数量 入库日期 品名 数量 出库日期
929 50 2003-11-2 939 5 2003-11-1
939 50 2003-11-5 929 20 2003-11-2
929 10 2003-11-7 929 10 2003-11-5
库存表
品名 数量
929 20
939 18
959 20
我想把入库表和出库表根据品名把品名相同的数据数量相加,最后再用库存表把他们连接起来,最后的结果如下
品名 数量 累计入库数量 累计出库数量
929 20 60 30
939 18 50 5
959 20 0 0
请问用select语句怎么实现啊
...全文
28 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
txlicenhe 2003-11-08
  • 打赏
  • 举报
回复
select a.品名,sum(a.数量) as 数量,
IsNull(sum(b.数量),0) as 累计入库数量,
IsNull(sum(c.数量),0) as 累计出库数量,
from 库存表 a
Left Join 入库表 b on a.品名 = b.品名
Left join 出库表 c on a.品名 = c.品名
group by a.品名
LoveSQL 2003-11-08
  • 打赏
  • 举报
回复
select 库存表.品名,库存表.数量,
(select sum(数量) from 入库表 where 品名=库存表.品名) as 累计入库数量,
(select sum(数量) from 出库表 where 品名=库存表.品名) as 累计出库数量,
from 库存表
hdslah 2003-11-08
  • 打赏
  • 举报
回复
select a.品名,sum(a.数量) 数量,sum(b.数量)累计入库数量,sum(c.数量) 累计出库数量,
from 库存表 a inner join 入库表 b on a.品名=b.品名 inner join 出库表 c on a.品名=c.品名 group by a.品名
DigJim 2003-11-07
  • 打赏
  • 举报
回复
select 库存表.品名,库存表.数量,
(select sum(数量) from 入库表 where 品名=库存表.品名) as 累计入库数量,
(select sum(数量) from 出库表 where 品名=库存表.品名) as 累计出库数量,
from 库存表

34,606

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧