MS Access запрос времени - PullRequest
       12

MS Access запрос времени

1 голос
/ 25 апреля 2010

Следование данным и использование MS Access с VB6

UserID  UserName  LogTime LogDate  

1       S         9:00    21/5/2010  
1       S         10:00   21/5/2010  
1       S         11:00   21/5/2010  
1       S         12:00   21/5/2010  
1       S         14:00   21/5/2010 
1       S         17:00   21/5/2010  

Требуется вывод, как показано в следующих 6 столбцах: -

1     S      21/5/2010 9:00  21/5/2010 10:00  
1     S      21/5/2010 11:00 21/5/2010 12:00  
1     S      21/5/2010 14:00 21/5/2010 17:00  

1 Ответ

1 голос
/ 25 апреля 2010

Это не будет быстро:

SELECT x.UserID, x.UserName, y.LogTime, x.LogTime, y.LogDate
FROM (
      SELECT Test.UserID, Test.UserName, 
             Test.LogTime, Test.LogDate, 
             (SELECT Count(*) FROM Test t WHERE t.LogTime<=Test.LogTime) AS c
      FROM Test)  AS x 
INNER JOIN (
      SELECT Test.UserID, Test.UserName, 
             Test.LogTime, Test.LogDate, 
             (SELECT Count(*) FROM Test t WHERE t.LogTime<=Test.LogTime) AS c, 
             c+1 as k
      FROM Test)  AS y 
ON x.c = y.k
WHERE x.c Mod 2=0
...