Ms access MS access库存数据库建议,查询

Ms access MS access库存数据库建议,查询,ms-access,inventory,querying,Ms Access,Inventory,Querying,我正在MS Access(2007)中构建一个小型库存数据库,我面临一个大难题:我应该将购买(获得)的产品/数量存储在与销售相同的表中,并带有一个交易类型字段,还是应该将它们分为两个表 我现在正在研究第二个选项,但我一直在查询这两个表 tblProducts:产品ID(主键)、产品代码、产品名称 tblVendorsCustomers:VndCstID(PK)、VndCstName等(供应商也可以是客户,反之亦然) TBL采购:采购ID(主键)、采购编号(特定)、VndCstID(FK)、购买日

我正在MS Access(2007)中构建一个小型库存数据库,我面临一个大难题:我应该将购买(获得)的产品/数量存储在与销售相同的表中,并带有一个交易类型字段,还是应该将它们分为两个表

我现在正在研究第二个选项,但我一直在查询这两个表

tblProducts:产品ID(主键)、产品代码、产品名称
tblVendorsCustomers:VndCstID(PK)、VndCstName等(供应商也可以是客户,反之亦然)
TBL采购:采购ID(主键)、采购编号(特定)、VndCstID(FK)、购买日期、截止日期
tblPurchaseDetails:PDetailsID(PK)、PurchaseID(FK)、ProductID(FK)、QuantityPurchased、price purchased
tblSale:SaleID(主键)、SaleNumber(特定)、VndCstID(FK)、DateSeld、PayDate
tblSaleDetails:SDetailsID(主键)、SaleID(FK)、ProductID(FK)、QuantitySeld、PriceSeld

两个表(购买、销售)正在更新。现在,例如,当我想要显示所选产品的报告时,我需要从这两个表中提取数据,查看购买数量(连同供应商名称、购买日期和价格)和销售数量(使用相同的数据集),并计算可用数量(在给定日期)。也许我遗漏了什么,但唯一的方法是创建两个select查询(针对每个表),而不是这些表的union(提取所有事务数据),然后是该union的select查询,添加一个标识符字段(针对来自采购的行和来自销售的行)以及产品选择的标准。我一直在计算可用数量。我在猜测总IIf,但不确定如何使用它

抱歉发这么长的帖子。。。 这是正确的方法吗?
任何帮助或建议都将不胜感激。

请在此发布您的数据模型谢谢您的快速回复,我已编辑了我的问题,并提供了详细信息。对于您的情况,我认为购买的物品迟早会成为售出的物品。因此,定义项目的字段几乎相同。(对于出售的物品,将有一个客户和一个日期,…)。因此,将项目存储在同一个表中并根据状态标记它们是很自然的。销售项目的额外数据可以(并且应该)存储在单独的“订单”表中。此外,我认为拆分比加入更容易。谢谢你的回复。是的,字段实际上是一样的。我可能会尝试将所有交易存储在同一个表中,看看它会把我带到哪里。查看请在此处发布您的数据模型谢谢您的快速回复,我已编辑了我的问题,并提供了详细信息。在您的情况下,我想购买的物品迟早会成为售出的物品。因此,定义项目的字段几乎相同。(对于出售的物品,将有一个客户和一个日期,…)。因此,将项目存储在同一个表中并根据状态标记它们是很自然的。销售项目的额外数据可以(并且应该)存储在单独的“订单”表中。此外,我认为拆分比加入更容易。谢谢你的回复。是的,字段实际上是一样的。我可能会尝试将所有事务存储在同一个表中,看看它会把我带到哪里