Vous pouvez utiliser un connect by
requête utilisant le prior + sys_guid()
astuce
select id,start_date + level - 1 as "date", field1 from t
connect by level <= end_date - start_date + 1
and prior id = id
and prior sys_guid() is not null;
DÉMO