I have had asked this question on my previous question post Printing the current value and previous value between the date range But this time I want to be more specific about the date range here.
如您所见,我有以下数据集:
ID DATE TIME STATUS
---------------------------------------------
A 01-01-2000 0900 ACTIVE
A 05-02-2000 1000 INACTIVE
A 01-07-2000 1300 ACTIVE
B 01-05-2005 1000 ACTIVE
B 01-08-2007 1050 ACTIVE
C 01-01-2010 0900 ACTIVE
C 01-05-2010 0800 INACTIVE
C 01-07-2010 1900 ACTIVE
我想要以下日期范围(2010年4月1日至2010年6月1日)之间的所有ID。输出应为:
ID DATE TIME STATUS
---------------------------------------------
A 01-07-2000 1300 ACTIVE
B 01-08-2007 1050 ACTIVE
C 01-01-2010 0900 ACTIVE
C 01-05-2010 0800 INACTIVE
这个想法是,如果你看到每个ID的最后一条记录,无论它是否属于该日期范围,因为我希望状态显示自该特定日期以来,ID=A状态没有改变。此外,如果您看到ID=C,则这两个日期都属于日期范围,因此应同时打印这两个。
PS:日期采用DATE格式和MS SQL
如果有人能对此发表意见,我将不胜感激。谢谢你的时间。