【问题标题】:Access- calculate a field based on any matching fields in another tableAccess-根据另一个表中的任何匹配字段计算一个字段
【发布时间】:2018-10-20 17:29:02
【问题描述】:

我正在尝试使用 Access 跟踪仓库中的可用空间。在表 A 中,我有一个“使用的宽度”和“货架 id”的字段,我希望它根据表 B 对“使用的宽度”求和,其中盒子的“货架 id”与表 A 中的“货架 id”匹配它会然后将表 B 中的“盒子宽度”(可能是多个盒子,因为每个架子上有多个盒子)求和,并将其放在表 A 中。

为清楚起见举例:

Table B:
BoxID    Box Width    ShelfID
1        24           2
2        24           2

Table A:
ShelfID    Used Width
2          48

感谢您的所有帮助!我尝试构建查询并使用查找向导,但它永远不会按照我想要的方式工作,因为我做错了。我没有弄乱对象依赖关系。我在某个地方出错了,我不知道在哪里。到目前为止,我已经将 ShelfID 设置为表 B 中的外键,但这就是我所得到的。

编辑: SQL 部分不是我在苦苦挣扎的地方,而是我无法弄清楚的具体如何在 Access 中执行此操作。我正在尝试获取该特定字段(使用的宽度)以从另一个表中提取信息,但我不确定 Access 中的哪个功能或位置可以执行此操作-查找向导..对象依赖关系...是宏吗?我不经常使用 Access,这比我过去使用的要复杂一些。

【问题讨论】:

    标签: sql database ms-access


    【解决方案1】:

    你想要一个简单的聚合查询吗?

    select shelfId, sum([Box Width]) as used_width
    from b
    group by shelfId;
    

    插入值:

    insert into a(shelfId, [Used Width])
        select shelfId, sum([Box Width]) as used_width
        from b
        group by shelfId;
    

    通常,您不会将结果放在表格中。您可以为摘要定义一个视图,因此这些值始终是最新的。

    【讨论】:

    • 我对如何做这部分有点了解。我不知道如何在 Access 中执行此操作,我想这是我的主要问题。
    • @aloeveraking24 。 . .这是 MS Access 语法。
    • 不,我的意思是我应该在哪里访问?比如,我应该按什么实际按钮来为该字段输入这个?
    • 我想我明白了,我必须实际进入并使用 SQL 视图将其保存为查询,然后在该特定字段上使用查找向导并选择该查询。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-20
    • 2020-08-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多