Есть таблица со столбцом created_at в формате Y-m-d hh:mm:ss. Нужно сделать выборку строк: с 22:00 до 06:00 утра следующего дня, за каждый день в указанном диапазоне дат.
Вот пример запроса, но в течении дня и он срабатывает, получаю нужные данные.
select created_at
from [table]
where (created_at between '2022-10-01 00:00:00' and '2022-10-20 23:59:59'
and (created_at between addtime(date(created_at), '06:00:00')
and addtime(date(created_at), '14:00:00'));
Но не могу получить 22:00 до 6:00 утра следующего дня.
Пробовал так:
and (created_at between addtime(date(created_at), '22:00:00')
and addtime(date(created_at) + 1, '06:00:00'));
но получаю данные только с 22 до 00 часов.. следующий день с 00 до 06:00 часов уже не получаю.