那是因为您将时间存储为文本。您必须转换为真实时间才能直接进行比较:
SELECT tblTemp2.RowID,
tblTemp2.User,
tblTemp2.Godzina_transakcji,
Nz(Dmax("Godzina_transakcji", "tblTemp2", "(TimeValue([Godzina_transakcji]) < #" & [Godzina_transakcji] & "#) and (User = '" & [User] & "')"), #00:00#) - TimeValue([Godzina_transakcji]) AS Diff
FROM tblTemp2;
要使用ID:
SELECT
tblTemp2.RowID,
tblTemp2.User,
tblTemp2.Godzina_transakcji,
(Select TimeValue(T.Godzina_transakcji)
From tblTemp2 As T
Where T.RowID = tblTemp2.RowID + 1 And T.User = tblTemp2.User) - TimeValue([Godzina_transakcji]) As Diff
FROM
tblTemp2;