アプリの代わりにデータベースにこれを実行させる必要があります:
select t.id_prfx, max(t.id_num) as latest_num from
(select substring(id, 1, 3) as id_prfx,
cast(substring(id,4) as integer) as id_num) t
group by id_prfx
これにより、各プレフィックスの最大の部品番号を取得する結果テーブルが得られます。
本当に「ABC」のプレフィックスだけが必要な場合は、次のようにします。
select max(cast(substring(id,4) as integer)) as max_num from table
where id LIKE 'ABC%'