Muszę zrobić porównanie dat w MySQL bez uwzględnienia składnika czasu, tj. Muszę przekonwertować „2008-11-05 14:30:00” na „2008-11-05”
Obecnie robię to:
SELECT from_days(to_days(my_date))
Czy jest na to właściwy sposób?
select date(somedate)
jest najczęściej.
Jeśli potrzebujesz dostosować się do innych formatów, możesz użyć:
SELECT DATE_FORMAT(your_date, '%Y-%m-%d');
W PostgreSQL używasz funkcji TRUNC (), ale nie widzę jej dla MySQL. Z mojego krótkiego wyszukiwania w Google wygląda na to, że musisz ustawić swoją wartość DATETIME na DATE.
Zobacz http://dev.mysql.com/doc/refman/5.0/en/date-and-time-types.html
źródło
date_trunc()
(nietrunc()
) nie będzie faktycznie usunąć część czasu w PostgreSQL. Po prostu ustawiłoby to na00:00:00
coś innego.Po prostu prosty sposób na zrobienie tego,
date("d F Y",strtotime($row['date']))
skąd$row['date']
pochodzi Twoje zapytanieźródło
Możesz użyć
ToShortDateString();
źródło