当日期在同一个表中的不同行中的位置时,如何找到日期差异?

Ash*_*pta 0 sql sql-server logic ms-access

我有一张桌子::

ItemID  VersionNo  CreatedDate
-------------------------------
1       3          7/9/2010
1       2          7/3/2010
1       1          5/3/2010
1       0          3/3/2010
2       0          4/4/2010
3       1          4/5/2010
3       0          3/4/2010
Run Code Online (Sandbox Code Playgroud)

...其中版本0表示..它是一个新生产的项目.在这里,我需要找时间(两个版本之间的时间间隔)并添加一列作为处理时间.喜欢::

ItemID  VersionNo  CreatedDate  ProcessTime
-------------------------------------------
1       3          7/9/2010     6Days or 6*24Hrs
1       2          7/3/2010     60Days 
1       1          5/3/2010     2Days
1       0          3/3/2010     ''
2       0          4/4/2010     '' 
3       1          4/5/2010     31Days
3       0          3/4/2010     ''
Run Code Online (Sandbox Code Playgroud)

VersionNo进行的不Fixed..means随着时间的推移,它可能会增加...如何acheive的欲望导致的MS Access或SQL-Server中.

提前感谢您的所有真诚努力.谢谢

Fio*_*ala 6

怎么样(访问):

SELECT t.ItemID, 
       t.VersionNo, 
       t.CreatedDate, (
          SELECT Top 1 
          CreatedDate 
          FROM Versions v 
          WHERE v.ItemID=t.ItemID 
          And v.VersionNo<t.VersionNo 
          ORDER BY VersionNo DESC) AS LastDate, 
       DateDiff("h",[LastDate],[CreatedDate]) AS DiffHrs,
       DateDiff("d",[LastDate],[CreatedDate]) AS DiffDays
FROM Versions t
Run Code Online (Sandbox Code Playgroud)