SQL не показывает мне время (час за днем) - PullRequest
0 голосов
/ 06 февраля 2020

SQL не показывает мне время, у меня есть таблица рабочих дней, и мне нужно, чтобы для каждого рабочего дня она показывала мне диапазон времени от 9 до 19 часов, чтобы затем показать количество транзакций в час, для каждый день месяца.

Я не могу сгенерировать хранимую процедуру, можно выполнить только запрос, чтобы не изменять базу данных в соответствии с политикой компании

У меня есть такой запрос.

SELECT
    TO_CHAR(cd.days, 'yyyymmdd') AS fechaTransaccion,
    NVL(SUM(data.numTransacionExitosa),0)       AS numTransacionExitosa,
    NVL(SUM(data.numTransactionPendiente),0)    AS numTransactionPendiente
FROM
    calendardays cd
LEFT JOIN
    data
ON
    cd.days = data.settledate
WHERE
    cd.DAYs BETWEEN ADD_MONTHS(TRUNC(to_date(20200201, 'yyyymmdd'), 'MM'),-1) AND ADD_MONTHS(LAST_DAY(TRUNC(to_date(20200201, 'yyyymmdd'))),-1)
and substr(SETTLEDATE, 10, 2) between 9 and 19
GROUP BY
    cd.days,  substr(SETTLEDATE, 10, 2) 
ORDER BY
    cd.days

мне нужно показать как это

1 Ответ

0 голосов
/ 14 февраля 2020

Трудно понять / ответить, не видя ваших данных, но если вам нужно извлечь час из даты, следуйте приведенному ниже примеру:

select extract(hour from cast(sysdate as timestamp)) hour from dual;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...