Pular para o conteúdo

Fóruns SQL e PL/SQL [DÚVIDA SELECT] [DÚVIDA SELECT]

#95337
burga
Participante

    Mesma consulta do diego, mas com decode ao invés de case, utilizando constantes nas horas e acréscimo do add_months também no conect by:

    SELECT dia_mes,
    DECODE(TO_CHAR(dia_mes, 'd'),1,'Domingo',7,'Sábado','12:00') saida,
    DECODE(TO_CHAR(dia_mes, 'd'),1,null,7,null,'13:00') entrada
    FROM (SELECT data + LEVEL - 1 dia_mes
    FROM (SELECT TRUNC(ADD_MONTHS(SYSDATE,1), 'mm') data
    FROM dual)
    CONNECT BY data + LEVEL - 1 <= LAST_DAY(TRUNC(ADD_MONTHS(SYSDATE,1))));