两列中两个日期之间的日期差异,基于列的状态

时间:2015-11-12 18:36:14

标签: sql-server

我还有包含列和数据的表格

Id    CardNo    IODate                     IOStatus
====  ========  =========================  ========
1     0004      2011-02-17 10:48:39.000    Entry    
2     0004      2011-02-17 10:55:39.000    Exit    
3     0004      2011-02-17 11:48:39.000    Entry
4     0004      2011-02-17 15:55:39.000    Exit

我希望获得进入和退出之间的小时和分钟。如果条目在一个日期,退出在第二天,它应该能够计算小时数。所有这些都必须在sql server中完成。

1 个答案:

答案 0 :(得分:0)

你想在SQL中做到这一点?试试这个: 假设表的名称是表:

Select DATEDIFF(hour,t1.IODate,t2.IODate) from Table t1 left join t2 on t1.ID=t2.ID-1