【发布时间】:2021-03-18 21:30:58
【问题描述】:
我发现了许多与我的问题相似但不完全相同的问题,我在其中发现的任何问题都没有帮助我,所以这里是新问题。
预期输出:如果用户相同,则一个时间记录与前一个记录之间的差异。
示例表:
+-------+--------+-------------------+------+
| RowID | User | Godzina_transakcji| Diff |
+-------+--------+-------------------+------+
| 1 | AAA | 14:23:03 | |
| 2 | AAA | 14:23:57 | |
| 3 | AAA | 14:25:03 | |
| 4 | BBB | 03:37:23 | |
| 5 | BBB | 03:39:21 | |
| 6 | BBB | 05:23:11 | |
+-------+---------+------------------+------+
所以查询应该对第 1 行给出 0,对于第 2 行给出 =14:23:57-14:23:03 等等。
到目前为止,我有类似的东西(基于@Tom Collins 在其他问题中的回答),但由于某种原因,它给出了 [错误]
SELECT tblTemp2.RowID,
tblTemp2.User,
tblTemp2.Godzina_transakcji,
Nz(Dmax("Godzina_transakcji", "User", "(Godzina_transakcji <" & [Godzina_transakcji] &
") and (User = '" & [User]
&"')"), 0) - [Godzina_transakcji] AS Diff
FROM tblTemp2;
我在这方面做错了什么?此外,在另一个步骤中,我将不得不考虑中间经过午夜。
结论:
如果有人会在这里寻找类似的问题,那就是对我有用的代码。谢谢古斯塔夫,你是神!
SELECT
tblTemp2.RowID,
tblTemp2.User,
tblTemp2.Godzina_transakcji,
Format(( Select TimeValue(T.Godzina_transakcji)
From tblTemp2 As T
Where tblTemp2.RowID = T.RowID + 1 And tblTemp2.User = T.User ) - TimeValue([Godzina_transakcji]), "hh:nn:ss") As Diff
FROM
tblTemp2;
【问题讨论】:
-
Godzina_transakcji的数据类型是什么?请参阅表定义。
-
在所有表格中都是日期/时间,但可能是因为它是从 txt 文件导入的,所以没有正确导入。