with recursive sequence AS (
SELECT MIN(min) AS val, id FROM register GROUP BY id UNION ALL SELECT val + 1, id FROM sequence JOIN register ON sequence.id = register.id WHERE val < register.max
) SELECT id, val FROM sequence ORDER BY id, val;