Brug ROW_NUMBER() funktion til dette:
SELECT *
FROM (select *,ROW_NUMBER() OVER (PARTITION BY group_id ORDER BY item_id) as RowRank
from items_in_groups
)sub
WHERE RowRank <=2
Demo:SQL Fiddle
ROW_NUMBER() funktion tildeler et nummer til hver række. PARTITION BY er valgfri, men bruges til at starte nummereringen forfra for hver værdi i den gruppe, dvs.:hvis du PARTITION BY group_id derefter for hver unikke group_id værdien ville nummereringen starte forfra ved 1. ORDER BY bruges selvfølgelig til at definere, hvordan optællingen skal gå, og er påkrævet i ROW_NUMBER() funktion.