Access 2010 查询计数加倍

Posted

技术标签:

【中文标题】Access 2010 查询计数加倍【英文标题】:Access 2010 Query counts double 【发布时间】:2012-06-25 04:00:31 【问题描述】:

全部。

我在 Access 2010 中建立了一个非常简单的预算数据库。当我运行查询以查找每个类别的费用总和时,我发现了以下结果:

在某些情况下,金额会加起来。 IE。我花了 240 美元,这就是退回的金额。

在一种情况下,退回的金额是输入金额的两倍。当我在查询设计模块中将“Sum”更改为“Group By”时,它返回了 6 条记录,这些记录加起来是我使用“Sum”找到的数量的一半。当我将“分组依据”更改为“计数”时,它返回值 12。

在其他情况下,我得到了类似的结果。但是,在该类别中,我会使用“Group By”找到 33 条记录,但当我使用“Count”时,它返回的值是 40。

这是我的 SQL:

SELECT tblType.typName, tblCategories.catName,
Sum(tblEntries.entAmount) AS SumOfentAmount,
tblBudgetParameters.budAmount
FROM tblVendors INNER JOIN (tblType INNER JOIN ((tblCategories INNER
JOIN tblBudgetParameters ON tblCategories.catID =
tblBudgetParameters.budItem) INNER JOIN tblEntries ON
tblCategories.catID = tblEntries.entCategory) ON
tblType.typIncomeExpenditure = tblEntries.entType) ON tblVendors.venID
= tblEntries.entVendor
WHERE (((tblEntries.entDate) Between [Enter Start Date] And [Enter End
Date]) AND ((tblBudgetParameters.budExpired)=False))
GROUP BY tblType.typName, tblCategories.catName, tblBudgetParameters.budAmount;

我如何知道什么是加倍以及如何解决它?

谢谢, -罗伯

【问题讨论】:

【参考方案1】:

尝试逐个消除表格并计数以找出哪个表格为您提供了重复项。例如:

SELECT tblVendors.VenID, Count(tblVendors.VenID)
FROM tblVendors 
INNER JOIN tblEntries 
ON tblVendors.venID = tblEntries.entVendor
HAVING Count(tblVendors.VenID) >1

【讨论】:

以上是关于Access 2010 查询计数加倍的主要内容,如果未能解决你的问题,请参考以下文章

MS Access 查询在查询中返回 0 个计数

如何在 Access 查询中选择最高计数?

Microsoft Access SQL 查询计数不同

ms-access 查询需要连接编号或计数

MS Access Sql 查询不是聚合函数的一部分。使用计数功能

Access 2010 更新查询错误