привет, я использую следующий SQL-запрос, чтобы получить записей в час за последние 24 часа :
WITH date_range
AS (SELECT TRUNC(sysdate - (rownum/24),'HH24') as the_hour
FROM dual
CONNECT BY ROWNUM <= 24),
the_data
AS (SELECT TRUNC(systemdate, 'HH24') AS log_date, count(*) AS num_obj
FROM transactionlog where merchantcode='merc0003'
GROUP BY TRUNC(systemdate, 'HH24'))
SELECT TO_CHAR(dr.the_hour,'DD/MM/YYYY HH:MI AM'), NVL(trans_log.num_obj,0)
FROM date_range dr LEFT OUTER JOIN the_data trans_log
ON trans_log.log_date = dr.the_hour
ORDER BY dr.the_hour DESC ;
Я пытаюсь получить количество записей в день в оракуле за последние 7 дней .. может кто-нибудь подсказать, что я могу сделать, чтобы получить последние 7 дней, изменив вышеуказанный запрос?
Я пытался подписаться, чтобы получить последние 7 дней, но пока ничего не набрал:
WITH date_range
AS
(SELECT TRUNC(sysdate - (7)) as the_hour
FROM dual
CONNECT BY ROWNUM <= 7),
the_data
AS (SELECT TRUNC(systemdate, 'HH24') AS log_date, count(*) AS num_obj
FROM transactionlog where merchantcode='merc0003'
GROUP BY TRUNC(systemdate, 'HH24'))
SELECT TO_CHAR(dr.the_hour,'DD/MM/YYYY HH:MI AM'), NVL(trans_log.num_obj,0)
FROM date_range dr LEFT OUTER JOIN the_data trans_log
ON trans_log.log_date = dr.the_hour
ORDER BY dr.the_hour DESC ;