你好,早上好,
我又回来了另一个问题,我很难过。我觉得自己很失败。
目前,我正在使用Access Query Wizard来构建一个相对较大的查询。我从外部数据源中抽取7个不同的表。
我目前有一个查询(sqONE),它将向我返回员工可以执行的所有功能。员工可以执行多个功能,并且功能可以由多个功能完成。我在这里使用总计函数。
然后,我有另一个查询(sqTWO),它查看员工做错事的所有时间(即错误)。它使用sqONE,然后列出每个错误以及错误编码的内容(错误号,错误描述)。
但是,我现在想要进行第三次查询(sqTHREE),该查询将计算员工修复该错误所需的时间。问题是他们可能会在这里做半个小时...那里有2个小时...这里有4个小时...所有的错误号都是一样的。因此,我得到了一张列出
的巨大表格 EmployeeName | EmployeeNumber | FunctionName| FunctionNumber | ErrorName | ErrorNumber | RepairTime
每次有人花时间修理错误。所以我可能有上面列出的列的一百个重复值,如果它花了一百次尝试,每半小时一次,以修复他们的错误。我想看到的是该错误的总修复时间。
有人可以帮助或建议我如何能够这样做吗?我试图在Access中使用TOTALS函数但得到我不能的错误,因为我从sqTWO中选择*。
任何帮助都会非常感激。感谢所有花时间帮助我的人。我真的很感激。
答案 0 :(得分:1)
没有看到您的SQL代码:
您可以做的第一件事是将所有字段名称放在sqTwo查询中。您无法使用*
这是'所有字段'当你想要做一个总计。
另一件事你可能要记住(而且我不确定,因为你没有给我们你的代码),如果你使用{{1进行表/查询的聚合在Access中,有时您必须先将结果写入临时表,然后才能将该数据集调用到另一个查询中。你可能还没到那里,但看起来你正朝着那个方向前进。只是需要注意的事情。
第三件事......您可能需要考虑避免使用Totals函数并将Group By
功能与Sum函数一起使用。但这可能是一个新的水平'开始SQL程序员的事情。