查询以跨多个表汇总
我是SQL的新手,我正在尝试创建一个数据库来管理小型库存。这是db的结构:
我需要创建一个返回总库存的查询每种材料。因此,第一步是查找与材料相关的所有批次。其次,查找与每批相关的所有动作。然后,将与每个运动关联的数量汇总,但是取决于运动类型(如果是一个好的收据,则是添加的(+),但是如果库存提取是撤回的,则是减去( - ))。
这是具有样本数据和所需结果的表的示例。
表材料
1 | strong |
---|---|
瓶 | 桌 |
桌 |
批次
batchid | Metterialid | vendormatial | vendorial vendorbatch | Expirationdate DateDate Date |
---|---|---|---|---|
1 | 2096027 | 00123456 | 12/12/2025 | 1001 |
1 | 2096027 | 0096027 | 00987654 | 11/11/11/2026 |
1000 | 10022400 | strong < / | 202400E | 10/10/2023 |
表运动
MovementId | batchId | sovemttype | 数量 | 创建的 | creat dycondate |
---|---|---|---|---|---|
1000 | 100 | 良好收据 | -protection” class =” __ cf_email__ cf_email__ cf_email__ =“ 205555521160454D41494C0E434F4D”> [email&nbsp; pretand] | 4/10/2022 | |
2 | 1000 | 库存提款 | 20 | [email&nbsp; prectioned] | 4/15/2022 |
3 | 1000 | 库存提款 | 25 | [电子邮件&nbsp;受保护] | 4/17/2022 |
4 | 1001 | 好收据 | 100 | 4/20/2022 | |
5 | 1001 | 库存提款 | 10 | 4/26/2022 | |
6 | 1002 | 好收据 | 50 | 2/26/2022 |
预期查询结果 - 每份材料的总库存:
材料数量 | 总计库 |
---|---|
瓶 | 145 |
盒 | 50 |
codalinventory
计算:对于瓶,有两个好的收据动作100和三个撤回20、25和10。因此,总库存将为(100+100) - (20+25+10)= 145。
感谢您的帮助!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)