下面是我正在使用的模拟数据库。我有四个不同的表: Tbl_MainDatabase,Tbl_InsuranceCoverage,Tbl_MatterDetail 和 Tbl_PaymentProcessing 。
我想要的-
我希望我的表单确定剩余的保留期限(即适用政策的保留期限-相同索赔编号的发票总和)
根据模拟数据库,为方便起见,所需答案应为[$ 2500-(300 + 700 + 355)]突出显示
我尝试过的事情
我通过以下查询使用了图形表示的帮助:
SELECT [Claim Number], Sum([Net Invoice Amount])
FROM [PaymentProcessing]
GROUP BY [Claim Number]
此方法以图表的形式显示我到目前为止每个索赔编号已花费了多少。但是我想显示剩余金额。
感谢您的帮助:)
我使用Access已有一个月大。但是我正在努力学习
提前谢谢!
答案 0 :(得分:2)
SELECT
IC.[Retention Limit]-SUM([Net Invoice Amt]) AS Remaining, MD.[Claim Number], IC.[Retention Limit], IC.InsuranceID
FROM tbl_InsuranceCoverage IC
INNER JOIN tbl_MatterDetail MD ON ic.InsuranceID = MD.Policy
INNER JOIN tbl_PaymentProcessing PP ON MD.MatterDetailID=pp.MatterDetailID AND MD.[Claim Number]=pp.[Claim Number]
GROUP BY MD.[Claim Number], IC.[Retention Limit], IC.InsuranceID
查看是否可行。 Havent已对其进行了测试,但看起来很简单。您可以删除多余的列,但这会使您理解连接有点
答案 1 :(得分:1)
所有新用户使用的@Doug Coats的上述代码非常有效。 请确保:所有“外键”和“主键”都在“关系”属性中链接。 (在查询中执行此操作的一种方法是-右键单击查询,然后选择“设计视图”->再次在灰色空间上单击鼠标右键,然后选择“立即显示所有表”。将表的主键拖放到外部在另一个表上键入键->这将为查询目的在两者之间创建关系。
这还将防止查询中的数据重复,然后使用类似Doug Coats在上述 SQL视图
中的注释中所述的代码。SELECT [Insurance Coverage].[Retention Unit]-Sum([Net Invoice Amount]) AS Remaining, [Matter Detail].[Claim Number], [Insurance Coverage].[Retention Unit], [Matter Detail].Policy
FROM (([Main Database] INNER JOIN [Matter Detail] ON [Main Database].[Database ID] = [Matter Detail].[Short Name]) INNER JOIN [Payment Processing] ON ([Matter Detail].[Matter Detail ID] = [Payment Processing].[Matter Detail ID]) AND ([Main Database].[Database ID] = [Payment Processing].[Short Name])) INNER JOIN [Insurance Coverage] ON [Matter Detail].Policy = [Insurance Coverage].[Insurance ID]
GROUP BY [Matter Detail].[Claim Number], [Insurance Coverage].[Retention Unit], [Matter Detail].Policy;
然后您可以以表单形式显示此查询-我仍在评估最好在组合框中显示此查询的最佳方法(不确定其他控件是否具有行源)
谢谢