Если вы просто хотите повторить, используйте row_number()
и арифметические c:
select c.*, a.*
from (select a.*, row_number() over (order by id) as seqnum, count(*) over () as cnt
from attributes a
) a join
(select c.*, row_number() over (order by id) as seqnum
from commission c
) c
on a.seqnum - 1 = mod(c.seqnum, a.cnt);