Something like this:Declare @T Table( Date datetime, Id int, Status varchar(20))insert into @T Select '8/2/2007 11:14:51', 1421, 'Passed' UNION ALL Select '8/2/2007 10:32:17', 1420, 'Passed' UNION ALL Select '8/2/2007 09:30:28', 1420, 'Failed' UNION ALL Select '8/2/2007 09:29:20', 1418, 'Passed' UNION ALL Select '8/2/2007 09:18:45', 1418, 'Failed' UNION ALL Select '8/1/2007 16:06:22', 1416, 'Failed' UNION ALL Select '8/1/2007 14:19:56', 1413, 'Passed' UNION ALL Select '8/1/2007 14:19:44', 1413, 'Failed' UNION ALL Select '8/1/2007 14:19:32', 1414, 'Passed' UNION ALL Select '8/1/2007 09:55:48', 1453, 'Passed' UNION ALL Select '8/1/2007 09:36:52', 1453, 'Failed' UNION ALL Select '7/3/2007 09:28:42', 1453, 'Passed' Declare @Id intSet @Id = 1453Select T2.*from @T T2Join ( Select Max(Date) as Mdate, Id from @T T1 Where T1.id = @Id Group by Id, Year(Date) , Month(Date) ) T on T.Mdate = T2.Date And T.Id = T2.Id
Dinakar Nethi************************Life is short. Enjoy it.************************http://weblogs.sqlteam.com/dinakar/