SELECT Mb.*, Sh.* ; FROM Members mb ; INNER JOIN StatusHistory sh ON Mb.MemberId = sh.MemberId ; WHERE sh.StatusId IN ; (SELECT CTOBIN(RIGHT(MAX(DTOS(ChangeDate)+BINTOC(StatusId )),4)) ; FROM StatusHistory GROUP BY MemberId )That's what happens when you write code based on a sample :)