Aqui está uma opção usando
user-defined variables
. Basicamente, ele cria um Row Number
por Grupo e, em seguida, ordena por ele junto com o rec_f_id
campo:SELECT rec_id, rec_f_id
FROM (
SELECT rec_id, rec_f_id,
@rn:=IF(@prev=rec_f_id,@rn+1,1) rn,
@prev:=rec_f_id
FROM tbl_records
JOIN (SELECT @rn:=0, @prev:=0) t
ORDER BY rec_f_id
) t
ORDER BY rn, rec_f_id