Faites-le plutôt comme une jointure :
SELECT T.*
FROM T join
(SELECT DISTINCT COMPANY_ID
FROM T
ORDER BY 1 DESC
LIMIT N
) TN
on TN.COMPANY_ID = T.COMPANY_ID;
Les jointures explicites fonctionnent souvent mieux que in
dans le where
clause.