sqlserver查询语句问题


神仙玩家 发布于 2020-9-11 08:32
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
1
L大大Lv7高级互助
发布于2020-9-11 08:49(编辑于 2020-9-11 09:45)

aa.pngselect c.型号,sum(k.出库数量) 出库数量,sum(r.入库数量) 入库数量

from 产品表 c

left join 出库表 k on c.型号=k.型号

left join 入库表 r on r.型号=c.型号

group by c.型号

  • zsh331 zsh331 哥,确定这个逻辑OK,这样关联数据重复了!
    2020-09-11 08:51 
  • L大大 L大大 回复 zsh331 他产品表的不是有固定信号吗 只要产品表数据不重复就行
    2020-09-11 09:13 
  • 岁岁 岁岁(提问者) 这个不可以呢
    2020-09-11 09:19 
  • zsh331 zsh331 这就是这个题目隐藏的坑,看似简单的关联,其实不然,不信你试试效果……
    2020-09-11 09:19 
  • 岁岁 岁岁(提问者) 回复 zsh331 确实不行
    2020-09-11 09:20 
最佳回答
1
zsh331Lv8专家互助
发布于2020-9-11 08:40(编辑于 2020-9-11 08:41)
分别对出库表&入库表分组求和,结果当二个子表与产品表左关联,搞定!
  • 岁岁 岁岁(提问者) 哈哈哈,我写了,但是不对,所以我来求助了
    2020-09-11 09:36 
  • zsh331 zsh331 回复 岁岁(提问者) 手机恢复,不方便打字,所以只提供了思路,框架有了,sql不难,学着写写吧,总要学会自己长大。^_^
    2020-09-11 09:38 
  • 岁岁 岁岁(提问者) 回复 zsh331 好的,非常感谢~
    2020-09-11 09:42 
最佳回答
0
snrtuemcLv8专家互助
发布于2020-9-11 08:51(编辑于 2020-9-11 08:51)

select a.型号,b.出库量,c.入库量,c.入库量-b.出库量 as 剩余数量 from 产品表 a

left join (select 型号,sum(出库数量) as 出库量 from 出库表 group by 型号) b on a.型号=b.型号

left join (select 型号,sum(入库数量) as 入库量 from 入库表 group by 型号) c on a.型号=c.型号


最佳回答
0
LarryAbbyLv5中级互助
发布于2020-9-11 09:36

SELECT 型号, T1.出库数量, T2.入库数量, NVL(入库数量 - 出库数量) 剩余数量
  FROM 产品表 T
  LEFT JOIN (SELECT 型号, SUM(出库数量) 出库数量 FROM 出库表 GROUP BY 型号) T1
    ON T.型号 = T1.型号
  LEFT JOIN (SELECT 型号, SUM(入库数量) 出库数量 FROM 入库表 GROUP BY 型号) T2
    ON T.型号 = T2.型号

最佳回答
0
咕咕咕Lv7初级互助
发布于2020-9-11 10:01(编辑于 2020-9-11 10:08)

select  d.ID,isnull(d.出库,0),isnull(d.入库,0),isnull(d.入库,0)-isnull(d.出库,0) as 库存 

from

(select * from Table_3

left join

(select Table_1.ID as id1,sum(INPUT)出库 from Table_1,Table_3

where Table_1.id=Table_3.ID

group by Table_1.id)a on a.id1=Table_3.ID

left join


(select Table_2.id as id2,sum(outPUT)入库 from Table_2,Table_3

where Table_2.id=Table_3.ID

group by Table_2.id)b on b.id2=Table_3.ID)d

1.png


  • 6关注人数
  • 537浏览人数
  • 最后回答于:2020-9-11 10:08
    请选择关闭问题的原因
    确定 取消
    返回顶部