SELECT DISTINCT messages.ArlId, messages.OneOrZeroIssueCount FROM messages USE INDEX (GetNextSupervisedMessageIdx) STRAIGHT_JOIN messagereviewers LEFT JOIN messagelocks ON (messagereviewers.ArlId = messagelocks.ArlId AND messagelocks.ReviewerId != 4) WHERE messages.TransientState=1 AND messages.ArlId = messagereviewers.ArlId AND messagereviewers.ReviewerId = 4 AND messagelocks.ReviewerId IS NULL AND messages.SearchState = 1 ORDER BY messages.ReverseState, messages.ReverseOneOrZeroIssueCount, messages.SendDate, messages.ArlId LIMIT 0,10;