Ответ 1
Да, используйте функцию date:
SELECT date(my_date)
Мне нужно выполнить сравнение даты в Mysql без учета компонента времени, то есть мне нужно преобразовать '2008-11-05 14:30:00' в '2008-11-05'
В настоящее время я делаю это:
SELECT from_days(to_days(my_date))
Есть ли правильный способ сделать это?
Да, используйте функцию date:
SELECT date(my_date)
select date(somedate)
является наиболее распространенным.
Если вам нужно использовать другие форматы, вы можете использовать:
SELECT DATE_FORMAT(your_date, '%Y-%m-%d');
В PostgreSQL вы используете функцию TRUNC(), но я не вижу ее для MySQL. Из моего краткого Googling, похоже, вам нужно указать значение DATETIME как DATE.
date_col = CAST(NOW() AS DATE)
См. http://dev.mysql.com/doc/refman/5.0/en/date-and-time-types.html
Просто простой способ сделать это date("d F Y",strtotime($row['date']))
, где $row['date']
поступает из вашего запроса
Вы можете использовать ToShortDateString();