Полуинтервалы вместо BETWEEN для корректных и быстрых диапазонов! — 7 апреля 2026 г. в 18:01:01.910
Полуинтервалы вместо BETWEEN для корректных и быстрых диапазонов! BETWEEN кажется удобным, но он включает обе границы, из-за чего легко ловятся баги на датах и времени, особенно с timestamp: WHERE created_at BETWEEN '2025-01-01' AND '2025-01-31' Такой код пропустит всё, что позже '2025-01-31 00:00:00', и это одна из самых частых, незаметных ошибок в аналитике: WHERE created_at >= '2025-01-01' AND created_at < '2025-02-01' Полуинтервал [start, end) работает предсказуемо для любых типов времени, не ломается на миллисекундах и хорошо ложится на индексы: WHERE ts >= now() AND ts < now() + interval '1 day' Этот паттерн используют в биллинге, аналитике, логах и любых системах, где важна точность временных границ. SQL Ready | #совет

