Календарные данные в MySQL (Temporal Data Types).
Используются для хранения значений даты, времени, года или их комбинаций. Типы календарных данных свдены в следующей таблице.
Тип | Кол-во байт | Описание |
DATE | 3 | YYYY-MM-DD – 2013-10-16 |
TIME | 3 | hh:mm:ss – 15:26:41 |
DATETIME | 8 | YYYY-MM-DD hh:mm:ss – 2013-10-16 15:26:41 |
TIMESTAMP | 4 | YYYYMMDDhhmmss – 20131016152641 |
YEAR | 1 | YYYY – 2013 |
YYYY, MM, DD, hh, mm, ss – это соответственно значение года, месяца, дня, часов, минут и секунд.
Тип TIMESTAMP предназначен для хранения дат в диапазоне от начала 1970 года (1970-01-01 00:00:00), до какой-то неопределенной даты в 1937 году. 1-е января 1970 года условно принято за начало эпохи Unix. Другими словами в данном типе сохраняется количество секунд, прошедших с 1 января 1970 по текущее время по усредненному времени Гринвича.
Верхнее значение диапазона типа данных TIMESTAMP возрастает по мере роста верхнего предела диапазона временных, значений в ОС UNIX. Это все сделано на уровне системных библиотек.
Отличие типа TIMESTAMP от DATETIME следующее:
- Столбец типа TIMESTAMP может быть автоматически заполнен значением по умолчанию, которое соответствует текущей дате и времени на компьютере, если при операциях Insert или Update не указывать явно значение для данного столбца.
- При получении из базы будет отображаться с учетом часового пояса.
- Для хранения использует 4 байта.