Если ваши идентификаторы заказаны (более новая версия, если выше идентификатор):
SELECT t.*, a.maxversion
FROM (
SELECT MAX(id) maxid, MAX(version) maxversion
FROM table
GROUP BY company_id
) a
INNER JOIN table t
ON a.maxid = t.id
Однако, если ваши идентификаторы не упорядочены должным образом, вам нужно использовать следующий запрос:
SELECT t.*
FROM (
SELECT company_id, MAX(version) maxversion
FROM table
GROUP BY company_id
) v
INNER JOIN table t
ON v.company_id = t.company_id
AND v.maxversion = t.version
(при условии UNIQUE
ограничения / индекса на (company_id, version)
)