2015-04-22 3 views
0

У меня есть дата, которая иногда может быть только год, годы и месяц или полная дата. Какова наилучшая практика, чтобы сохранить ее на db?Как вставить только год в mysql date column

мне нужно сделать поиск позже, как: Дайте мне все даты между 2004 - 2008 или дать мне всю дату между 2004-05-21 до 2005-12-31

+0

Возможный дубликат [Функция даты для отображения всех дат между двумя датами] (http://stackoverflow.com/questions/14851190/date-function-to-display-all-dates-between-two-dates) –

+0

магазин это как полная дата. вы можете извлечь компонент года по мере необходимости с помощью 'year (datefield)' –

+0

. Я прочитал, что могу сохранить дату как 2004-00-00, чтобы сохранить неполную дату ... это может сработать? – Atomico

ответ

3

Я хотел бы предложить использовать формат DATE (https://dev.mysql.com/doc/refman/5.5/en/datetime.html), а затем при необходимости использовать более конкретные функции для запроса записи на диапазоны дат, как

WHERE YEAR(created) BETWEEN 2010 AND 2011 

т.д.

Больше даты, связанные с \ время функций здесь: https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

+0

Не нужно времени, поэтому нет смысла хранить как DATETIME. Просто DATE будет достаточно. – zgr024

+0

Вы правы. – Jinksy

Смежные вопросы