资源由SQL分配

时间:2013-10-21 09:29:14

标签: sql ms-access

将资源分配给不同的记录时遇到问题,问题如下:

第一个表收集包含Product ID, Planned Amount

的数据

第二个表收集包含Material ID, Actual Amount Used, Inventory的数据 (两者之间的关系类型是一对多)

我想在一个查询中混合使用两个表,显示以下详细信息:

Product ID  Planned Amount Material ID Actual Amount Used Inventory Remained Inventory
1              10             5            20               250        250-(10*20)=50
2              5              5            5                50          50-(5*5)=25
3              1              5            10               25           25-(1*10)=15

如何在Access中通过SQL创建上表?

1 个答案:

答案 0 :(得分:0)

你说

  

两者之间的关系类型是一对多

但是“材料”表中似乎没有外键可以加入“产品”表。

假设ProductID可用作外键,表名为ProductMaterial

SELECT [Product].[Product ID]
    ,[Planned Amount]
    ,[Material ID]
    ,[Actual Amount Used]
    ,[Inventory]
    ,[Inventory]-([Planned Amount]*[Actual Amount Used]) AS [Remained Inventory]
FROM Product INNER JOIN Material 
    ON Product.ProductID = Material.ProductID 

但我怀疑您的问题还有更多,因为Material ID对于所有行都是相同的,计算是否必须考虑使用相同材料的库存来计算其他产品?