IF OBJECT_ID('tempdb..#TempTable') IS NOT NULL
DROP TABLE #TempTable
CREATE TABLE #TempTable (
[ID] INT IDENTITY(1,1) NOT NULL,
[MemberID] INT NULL,
[Event] NVARCHAR(50) NULL,
[EventDate] DATETIME NULL,
PRIMARY KEY (ID))
INSERT INTO #TempTable
SELECT 1,'Test Event1','2012-03-20 05:39:51' UNION ALL
SELECT 1,'Test Event1','2012-03-21 05:39:51' UNION ALL
SELECT 1,'Test Event1','2012-03-22 05:39:51' UNION ALL
SELECT 3,'Test Event3','2012-03-23 05:39:51' UNION ALL
SELECT 2,'Test Event2','2012-03-24 05:39:51' UNION ALL
SELECT 2,'Test Event2','2012-03-19 05:39:51' UNION ALL
SELECT 1,'Test Event1','2012-03-23 05:49:51' UNION ALL
SELECT 3,'Test Event3','2012-03-23 05:49:51' UNION ALL
SELECT 4,'Test Event4','2012-03-27 05:39:51' UNION ALL
SELECT 3,'Test Event3','2012-03-21 05:39:51'
SELECT
r.MemberID
,r.Event
,r.EventDate
FROM
(
SELECT
ROW_NUMBER() OVER (PARTITION BY MemberID ORDER BY EventDate DESC) AS RowNum
,MemberID
,Event
,EventDate
FROM
#TempTable
) r
WHERE
RowNum <= 2