What version of SQL server are you using? Assuming you are using a relatively recent version, you can make use the ROW_NUMBER() function. Alternatively, you can just make the aggregate a derived table a join make to the base table:SELECT Media.*FROM tabMedia AS MediaINNER JOIN ( SELECT ReferenceNumber ,ShipToCompanyID FROM tabMedia WHERE MediaTypeID = '1' AND FinishDate > '2011-01-01' GROUP BY ReferenceNumber ,ShipToCompanyID HAVING COUNT(*) > 1 ) AS T ON Media.ReferenceNumber = T.ReferenceNumber AND Media.ShipToCompanyID = T.ShipToCompanyID