Литералы и допустимые значения даты и времени в MySQL
Рубрика по базам данных: http://zametkinapolyah.ru/zametki-o-mysql/sqlite/
Рубрика MySQL: http://zametkinapolyah.ru/zame....tki-o-mysql/server-m
Паблик блога в ВК: https://vk.com/zametkinapolyah
Тематическая группа в ВК: https://vk.com/zametki_bd
Помощь проекту:
WMR: R288272666982
WMZ: Z293550531456
Яндекс.Деньги: 410011531129223
значения даты и времени в MySQL могут быть представлены как в виде строк, так и в числовой форме записи;
если MySQL ожидает получить дату, то следующие строки он интерпретирует одинаково: '2016-09-09', '20160909', 20160909;
MySQL поддерживает стандартный SQL-синтаксис записи даты и времени, когда мы указываем ключевое слово, за которым следует строк, содержащая дату и время:
DATE ‘str’
TIME ‘str’
TIMESTAMP ‘str’
также MySQL без труда распознает ODBC синтаксис:
{ d 'str' }
{ t 'str' }
{ ts 'str' }
дату и время MySQL может хранить в виде строк вида: ‘YYYY-MM-DD’ или ‘YY-MM-DD’, в этом случае разделителем может быть любой пунктуационный символ: /, ^, @ и другие (YYYY@MM@DD или YY/MM/DD);
Если MySQL ожидает дату и время, то она может добавлять разделители автоматически: ‘20001115’, даже если MySQL получает число, она его преобразует к формату даты и времени 19851231;
К дате мы можем добавлять значения времени: ‘YYYY-MM-DD HH:MM:SS’ или ‘YY-MM-DD HH:MM:SS’, в этом формате можно использовать в качестве разделителя можно использовать любой символ и MySQL умеет самостоятельно добавлять разделители;
Если вы задаете дату и время в недопустимой форме
, то MySQL преобразует эту дату в нулевой год, месяц, день;
время в MySQL можно представить в виде следующих строк: ‘D HH:MM:SS’, ‘HH:MM:SS’, ‘HH:MM’, ‘D HH:MM’, ‘D HH’, ‘SS’, здесь D – это количество дней (от 0 до 34);
MySQL добавит разделители автоматически, если сможет «понять» формат: ‘HHMMSS’, ‘101112’ или 121112;
формат времени в MySQL позволяет хранить значения до микросекунды (10 в -6 степени), для этого используйте символ точки в качестве разделителя после секунды: ’01:12:55.35’.