如何编写涉及将不同表的两列相减的选择查询

2020-08-20 19:45发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 嗨, 我有两个表 ...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我有两个表

1)库存表INV_TABLE:具有领域:material_no,数量,user_id和location_no

2)交货单表DNOTE_TABLE:具有字段:DNOTE_NO,material_no,quantity,user_id等。

现在我们有一个要求,我们必须生成具有

的库存报告

Material_No,User_ID和Total_Available_Qty。

这里的总可售数量是通过将库存表数量与交货单表数量相减

来计算的

您可以协助形成选择查询吗...

i我使用了左联接,但没有得到正确的计数,并且在total_available_Qty中填充了负值。 我的查询如下

选择DISTINCT INV.material_no,INV.USER_ID,(SUM(INV.quantity)-SUM(PICK.quantity))AS TOT_QTY
 从INV_TABLE INV左联接
 DNOTE_TABLE选择INV.USER_ID = PICK.USER_ID和INV.material_no = PICK.material_no
 投资数量不在('0')
 GROUP BY INV.material_no,INV.USER_ID ORDER BY TOT_QTY
 

即 基本上如图中所示,应该提取所有库存表记录,而保留deilvery注释表记录。

请协助。

致谢

Govardan

(6.2 kB)
2条回答
wang628962
2020-08-20 20:43 .采纳回答

HI

尝试一下

选择材料,用户,总和(发票-已选择)作为"总计"
 从
 (SELECT INV.material_no作为" material",
        INV.USER_ID为"用户",
        INV.quantity为"已开发票"
        PICK.quantity为"已选择"
 从INV_TABLE作为INV左联接DNOTE_TABLE作为PICK ON INV.USER_ID = PICK.USER_ID和INV.material_no = PICK.material_no
 INV.quantity> 0)为"最终"


 GROUP BY材料,用户
 

一周热门 更多>