Tudo joinha ?? Então, a resposta é Depende : vc quer saber jobs que EFETIVAMENTE EXECUTARAM no período ou que estão PROGRAMADOS para executar nesse período ? E claro, no RDBMS Oracle vc pode ter JOBs programados/criados via DBMS_JOB ou via DBMS_SCHEDULER, cada um deles é mantido log/dados de execução em tabelas internas diferentes…
==> Se for JOBs que efetivamente executaram no período de 3 da manhã até 6 da manhã : para JOBs criados com DBMS_JOBS vc faz um :
SELECT * FROM DBA_JOBS WHERE EXTRACT(HOUR FROM LAST_DATE) between 03 and 06;
e para SCHEDULER jobs vc faz tipo :
SELECT * FROM DBA_SCHEDULER_JOBS WHERE EXTRACT(HOUR FROM LAST_START_DATE) between 03 and 06;
==> E se o que vc quer é jobs PROGRAMADOS pra rodar no período de 3 às 6 da manhã as consultas seriam, respectivamente :
SELECT * FROM DBA_JOBS WHERE EXTRACT(HOUR FROM NEXT_DATE) between 03 and 06;
e
SELECT * FROM DBA_SCHEDULER_JOBS WHERE EXTRACT(HOUR FROM NEXT_RUN_DATE ) between 03 and 06;
[]s
Chiappa