У меня были некоторые "странные" результаты при сравнении дат.
table1
имеет две строки со значениями TIMESTAMPS 2009-08-26 23:39:56
и 2009-08-27 00:01:42
Когда я делаю этот запрос:
select * from table1 c
INNER JOIN table2 r ON r.table1_id = c.id
WHERE DATE(c.authorization_date) = '2009-08-26'
возвращает обе строки (если он должен был вернуть только одну).
Для дополнительной странности строки в возвращенном наборе результатов имеют одно и то же значение: 2009-08-26 23:39:56
Но если я сделаю этот запрос:
SELECT DATE(authorization_date) FROM table1
Правильно возвращает две строки со значениями 2009-08-26
и 2009-08-27
Итак, вот мои вопросы. Как я могу сделать сравнение, чтобы получить правильный результат, что я делаю не так? Может быть связано с внутренним соединением?