Найти в Дзене

Как генерить опорные даты в SQL

Бывает нужно для сбора статистики. Генерим даты, потом LEFT JOINом собираем статистику из таблиц. Главное чтобы временный интервалы совпадали. Oracle: Сгенерить по дням за последние 5 дней: SELECT TRUNC(SYSDATE - ROWNUM) DT FROM DUAL CONNECT BY ROWNUM < 5 Сгенерить по часам за последние 5 дней: SELECT TRUNC(SYSDATE - ROWNUM / 24, 'HH') DT FROM DUAL CONNECT BY ROWNUM < 5 * 24

Бывает нужно для сбора статистики. Генерим даты, потом LEFT JOINом собираем статистику из таблиц. Главное чтобы временный интервалы совпадали.

Oracle:

Сгенерить по дням за последние 5 дней:

SELECT TRUNC(SYSDATE - ROWNUM) DT FROM DUAL CONNECT BY ROWNUM < 5

Сгенерить по часам за последние 5 дней:

SELECT TRUNC(SYSDATE - ROWNUM / 24, 'HH') DT FROM DUAL CONNECT BY ROWNUM < 5 * 24