访问查询中的 DSUM 现有字段

Posted

技术标签:

【中文标题】访问查询中的 DSUM 现有字段【英文标题】:DSUM Existing Field in Access Query 【发布时间】:2017-01-24 07:35:55 【问题描述】:

我试图在同一查询的 DSUM 表达式中引用我的查询中的一个字段,但我无法让它工作。你能帮忙吗?

我希望以下查询中的“总计 $ Accrual”列对“应计主数据”表中每个应计 ID 的“应计原始数据”表中的“金额 $”金额求和(因为它们显示在查询运行时的查询)。

当我运行它时,查询会打开一个输入框窗口。

我最初尝试使用以下公式,但它说该字段可能引用了多个表中的“应计 ID”,因此我尝试使用屏幕截图来引用查询中的字段。

应计总额:DSum("[Amount $]","Accruals Raw Data","[Accrual ID]='" & [Accrual ID] & "'")

非常感谢

【问题讨论】:

您使用的是哪个 RDBMS? 您使用的是 mysql 还是 MS Access?不要标记未涉及的产品。 【参考方案1】:

试试这个:

Total $ Accrual: DSum("[Amount $]","[Accruals Raw Data]","[Accrual ID]='" & [Accruals Master Data].[Accrual ID] & "'")

您有 2 个具有相同列名 [Accrual ID] 的表在查询中,因此 Access 要求澄清您所引用的表。

【讨论】:

嗨,谢尔盖,上面没有返回结果。此外,在表达式末尾添加的 [应计原始数据] 指的是原始数据表。我可以让 DSUM 引用查询本身中的“应计 ID”字段吗?谢谢 刚刚注意到你有外部连接,编辑了答案。它应该参考主表。是的,您可以在没有 DSum 的情况下在查询中计算总和,只需添加总计并为 [Amount $] 字段选择 Sum 函数。此查询将运行得更快,但带有 DSum 的变体可用于更新查询,第二个 - 不是。

以上是关于访问查询中的 DSUM 现有字段的主要内容,如果未能解决你的问题,请参考以下文章

访问:DSUM 行为怪异

访问大型 C/C++ 项目中的现有字段

查询或 dsum 中的 MS Access 性能 dlookup?

是否可以在脚本字段中访问查询词?

使用表单域的 DSUM 函数

无法深入访问字段多个子查询