当前位置: 首页 > 面试题库 >

MS Access 2010在查询中的运行总计

席宜修
2023-03-14
问题内容

我不是Access的忠实拥护者,但是对于这个项目,我被要求创建一个Access数据库。我为其他数据库类型创建了类似的东西,所以并不太困难。我大部分都想通了,但总的运行量让我大吃一惊。

我有下表:表名 attendanceView

询问: SELECT * FROM attendanceView

======================================================================================
agentID    |     incurrredDate     |   points    |    OneFallOff     |    TwoFallOff
======================================================================================
chtall     |       10/7/2013       |     2       |       2           |        2
chtall     |       10/15/2013      |     2       |       2           |        2
chtall     |       11/26/2013      |     2       |       2           |        2
chtall     |       12/17/2013      |     2       |       2           |        2
vimunson   |       7/22/2013       |     2       |       2           |        2
vimunson   |       7/29/2013       |     2       |       1           |        1
vimunson   |       12/6/2013       |     1       |       1           |        1

这个查询做的事情需要做,找到值OneFallOffTwoFallOff。但是我需要找到一种方法来TwoFallOff为每个运行总计agentID。例如,chtall有四个记录,如下所示:

==================================================================================================
agentID    |     incurrredDate     |   points    |    OneFallOff     |    TwoFallOff     |   total
==================================================================================================
chtall     |       10/7/2013       |     2       |       2           |        2         |    2
chtall     |       10/15/2013      |     2       |       2           |        2         |    4
chtall     |       11/26/2013      |     2       |       2           |        2         |    6
chtall     |       12/17/2013      |     2       |       2           |        2         |    8
vimunson   |       7/22/2013       |     2       |       2           |        2         |    2
vimunson   |       7/29/2013       |     2       |       1           |        1         |    3
vimunson   |       12/6/2013       |     1       |       1           |        1         |    4

我尝试了DSUM()哪些无效的方法,或者我使用的方法有误。如果表格中的内容不明确,则total当代理更改时,该列将重置为0。


问题答案:

您可以通过相关子查询获得所需的内容。

SELECT
    a1.agentID,
    a1.incurrredDate,
    a1.points,
    a1.OneFallOff,
    a1.TwoFallOff
    (
        SELECT Sum(a2.TwoFallOff)
        FROM attendanceView AS a2
        WHERE
                a2.agentID = a1.agentID
            AND a2.incurrredDate <= a1.incurrredDate
    ) AS total
FROM attendanceView AS a1;

您也可以使用DSum,但随后需要在 WhereCondition
选项中使用agentID和分隔符。与子查询方法相比,这似乎需要更多的精力,而且我发现它更容易出错。incurrredDate``DSum __

SELECT
    a.agentID,
    a.incurrredDate,
    a.points,
    a.OneFallOff,
    a.TwoFallOff,
    DSum
        (
            "TwoFallOff", "attendanceView",
            "agentID = '" & a.agentID & "' " &
            "AND incurrredDate <= " & 
            Format(a.incurrredDate, "\#yyyy-m-d\#")
        ) AS total
FROM attendanceView AS a;

这两个查询都使用Access 2007中的示例数据返回您请求的结果。



 类似资料:
  • 用户实体类: 感谢任何帮助。多谢了。

  • 提前感谢! UPDATE:这是两个不同的查询,而不是delete查询中的语句。

  • 问题内容: 我有一张table: 我想构造一个语句,给定一个事件可以返回从该事件开始的事件“运行”的长度。运行由以下方式定义: 如果两个事件之间的时间间隔不超过30秒,则两个事件将同时运行。 如果A和B一起运行,并且B和C一起运行,则A与C一起运行。 但是,我的查询不需要在时间上倒退,因此,如果我选择事件2,则仅将事件2、3和4计为从2开始的事件运行的一部分,而应将3作为事件返回。运行时间。 有任

  • 他们说现在com.hp.hpl.jena.sparql.Engine.Binding.BindingMap在这个版本中不是一个简单的类,而是一个接口。 如果是这样,那么如何在当前版本中运行sparql查询。请根据我分享的代码给出一个例子。提前道谢。

  • 问题内容: 我想使mysql查询以从表中的列中获取最高的5个值,所以查询是: 如何运行此查询并将其值保存在变量中? 如果可能,我更喜欢将findAll()方法与这些选项一起使用。 问题答案: 有几种方法可以实现此目的,但是如果您更喜欢查询生成器方法

  • 问题内容: 我是Elasticsearch的新手。我正在尝试编写一个查询,该查询将按字段分组并计算总和。在SQL中,我的查询如下所示: 我有在ES中看起来像这样的数据: 我想本质上在ES中运行与SQL中相同的查询,这样我的结果将类似于(当然是json): 问题答案: 在elasticsearch中,您可以通过使用术语stats facet 实现此目的: