【发布时间】:2012-01-22 14:55:30
【问题描述】:
我可以请您帮忙解决以下问题吗?
我正在尝试计算结果中从一条记录到另一条记录的变化。如果我向您展示我当前的查询和结果可能会有所帮助...
SELECT A.AuditDate, COUNT(A.NickName) as [TAccounts],
SUM(IIF((A.CurrGBP > 100 OR A.CurrUSD > 100), 1, 0)) as [Funded]
FROM Audits A
GROUP BY A.AuditDate;
查询给了我这些结果...
AuditDate D/M/Y TAccounts Funded
--------------------------------------------
30/12/2011 506 285
04/01/2012 514 287
05/01/2012 514 288
06/01/2012 516 288
09/01/2012 520 289
10/01/2012 522 289
11/01/2012 523 290
12/01/2012 524 290
13/01/2012 526 291
17/01/2012 531 292
18/01/2012 532 292
19/01/2012 533 293
20/01/2012 537 295
理想情况下,我想要得到的结果类似于以下...
AuditDate D/M/Y TAccounts TChange Funded FChange
------------------------------------------------------------------------
30/12/2011 506 0 285 0
04/01/2012 514 8 287 2
05/01/2012 514 0 288 1
06/01/2012 516 2 288 0
09/01/2012 520 4 289 1
10/01/2012 522 2 289 0
11/01/2012 523 1 290 1
12/01/2012 524 1 290 0
13/01/2012 526 2 291 1
17/01/2012 531 5 292 1
18/01/2012 532 1 292 0
19/01/2012 533 1 293 1
20/01/2012 537 4 295 2
查看“17/01/2012”行,“TChange”的值为 5,因为“TAAccounts”已从之前的 526 增加到 531。“FChange”将基于“Funded”场地。我想需要注意的是,此示例的前一行的日期为 '13/01/2012'。我的意思是,有些日子我没有数据(例如周末)。
我想我需要使用 SubQuery,但我真的很难弄清楚从哪里开始。你能告诉我如何得到我需要的结果吗?
我正在使用 MS Access 2010
非常感谢您的宝贵时间。
约翰尼。
【问题讨论】:
-
我不认为子查询会帮助你。点赞