Всем здравствуйте!
Есть таблица
Я выполняю простейший запрос, который задействует 2 поля - DATE_FROM и DATE_TO (у обоих полей тип DATETIME)
В таблице заполнены тестовые данные -
Есть данные
DATE_FROM = 2024-07-13 17:31:00 и DATE_TO = 2024-07-16 17:31:00
Далее я делаю запрос
SELECT
*
FROM
b_calendar_resource
WHERE
b_calendar_resource.DATE_FROM <= '2024-07-13' AND
b_calendar_resource.DATE_TO >= '2024-07-13'
Т.е. мне нужно найти записи с определенной датой, время в этом случае роли не играет, но изменить тип поля на date нельзя.
и получаю пустой результат.
Но если я сдвину дату допустим на 2024-07-14 и делаю такой запрос -
SELECT
*
FROM
b_calendar_resource
WHERE
b_calendar_resource.DATE_FROM <= '2024-07-14' AND
b_calendar_resource.DATE_TO >= '2024-07-14'
То тут уже нахожу вхождение в дату
Пара вопросов - почему такое происходит?
Можно ли оптимизировать запрос, чтобы искать все вхождения даты в этих полях искались, например через between ?