В таблице events(created_at) нужно выбрать события за последние 7 дней относительно текущего момента (current_timestamp). Какое условие в WHERE корректнее?

AWHERE created_at >= current_timestamp - INTERVAL '7 days'
BWHERE created_at >= current_date - INTERVAL '7 days'
CWHERE DATE_TRUNC('day', created_at) >= current_timestamp - INTERVAL '7 days'
DWHERE created_at <= current_timestamp - INTERVAL '7 days'
Правильный ответ. Для скользящего окна используйте current_timestamp и вычитайте интервал через INTERVAL.

Разбор

current_date обнуляет время до полуночи и подходит для календарных периодов. Для последних 7 дней относительно текущего момента используйте created_at >= current_timestamp - INTERVAL '7 days'.

Проверь себя · 1/3разбор после ответа
Для сравнения метрик по неделям нужно получить начало предыдущей недели. Какое выражение вернёт начало предыдущей недели относительно current_date?
Тренировать SQL в Telegram

Ещё вопросы по теме «Даты и время»