Размер
Руководство по SQL. Функции даты.
Play

Руководство по SQL. Функции даты.

Ниже приведён список важных функций, которые относятся к дате и времени. Все данные функции доступны для работы с помощью SQL.

Примеры, приведённые ниже предназначены для RDBMS MySQL.

Name Description ADDDATE() Добавляет дату ADDTIME() Добавляет время CONVERT_TZ() Конвертирует одну временную зону в другую. CURDATE() Возвращает текущую дату. CURRENT_DATE(), CURRENT_DATE То же самое, что и CURDATE. CURTIME() Возвращает текущее время NOW() Возвращает текущие дату и время. CURRENT_TIME(), CURRENT_TIME То же самое, что и NOW() DATE_ADD() Добавляет две даты DATE_FORMAT() Определяет формат даты DATE_SUB() Разбивает две даты DATE() Возвращает только дату (число, месяц, год) из даты. DATEDIFF() Разделяет две даты DAY() То же самое, что и DAYOFMONTH() DAYNAME() Возвращает имя дня недели. DAYOFMONTH() Возвращает день месяца DAYOFWEEK() Возвращает индекс аргумента дня недели DAYOFYEAR() Возвращает номер дня в году (1 – 366) EXTRACT Выдаёт часть даты FROM_DAYS() Конвертирует номер дня в дату. FROM_UNIXTIME() Форматирует дату в дата/время для UNIX систем. HOUR() Возвращает часы LAST_DAY Возвращает крайний день месяца. LOCALTIME(), LOCALTIME То же самое, что и NOW() LOCALTIMESTAMP, LOCALTIMESTAMP() То же самое, что и NOW() MAKEDATE() Создаёт дату из года и дня в году MAKETIME Создаёт время MICROSECOND() Возвращает микросекунды MINUTE() Возвращает только минуты MONTH() Возвращает только месяц MONTHNAME() Возвращает имя месяца CURRENT_TIMESTAMP(), CURRENT_TIMESTAMP Синоним для NOW() PERIOD_ADD() Добавляет период для в месяце-году. PERIOD_DIFF() Возвращает количество месяцев в периоде. QUARTER() Возвращает квартал SEC_TO_TIME() Конвертирует секунды в формат ‘ЧЧ:ММ:СС’ SECOND() Возвращает секунды (0 – 59) STR_TO_DATE() Конвертирует строку в дату SUBDATE() То же самое, что и DATE_SUB() Требует три аргумента SUBTIME() Разделяет время SYSDATE() Возвращает системное время TIME_FORMAT() Определяет формат времени TIME_TO_SEC() Конвертирует время в секунды TIME() Возвращает время. TIMEDIFF() Отделяет время TIMESTAMP() Возвращает текущие дату и время. TIMESTAMPADD() Добавляет период дата/время IMESTAMPDIFF() Отделяет интервал из дата/время TO_DAYS() Конвертирует дату в дни UNIX_TIMESTAMP() Возвращает дату/время для UNIX систем UTC_DATE() Возвращает дату UTC UTC_TIME() Возвращает время UTC UTC_TIMESTAMP() Возвращает дату/время UTC WEEK() Возвращает номер недели WEEKDAY() Возвращает индекс дня недели WEEKOFYEAR() Возвращает номер недели в году (1 – 53) YEAR() Возвращает год YEARWEEK() Возвращает год и неделю

Примеры

Добавление даты (ADDDATE)

Добавление времени (ADDTIME)

Конвертация временной зоны (CONVERT_TZ)

Текущая дата (CURDATE())

Текущее время (CURTIME())

Дата (DATE)

Разница во времени (DATEDIFF())

Добавление даты (DATEADD(), DATE_SUB()) Данные функции обеспечивают арифметику дат. Мы можем добавить или отнять определённый интервал времени от определённой даты.

Ниже приведена таблица, в которой указаны возможные аргументы для интервалов:

Значение Ожидаемый формат MICROSECOND Микросекунды SECOND Секунды MINUTE Минуты HOUR Часы DAY Дни WEEK Недели MONTH Месяцы QUARTER Кварталы YEAR Годы SECOND_MICROSECOND ‘Секунды.Микросекунды’ MINUTE_MICROSECOND Минуты.Микросекунды’ MINUTE_SECOND ‘Минуты.Секунды’ HOUR_MICROSECOND ‘Часы.Микросекунды’ HOUR_SECOND ‘Часы.Секунды.Микросекунды’ HOUR_MINUTE ‘Часы.Минуты’ DAY_MICROSECOND ‘Дни.Микросекунды’ DAY_SECOND Дни.Часы.Минуты.Секунды DAY_MINUTE Дни.Часы.Минуты DAY_HOUR Дни.Часы YEAR_MONTH Года.Месяцы

Формат даты Формат даты определяется с помощью специальных символов. Список таких символов приведён в таблице, которая находится ниже:

Спецификатор Описание %a Сокращённое имя дня недели %b Сокращённое имя месяца %c Номер месяца %D День месяца с английским суффиксом %d Номер дня в месяце (00 … 31) %e Номер дня в месяце (0 … 31) %f Микросекунды (000000 … 999999) %H Часы (00 … 23) %h Часы (01 … 12) %I Часы (01 … 12) %i Минуты (00 … 59) %j Дни года (001 … 366) %k Часы (00 … 23) %l Часы (1 … 12) %M Имя месяца %m Номер месяца %p AM или PM %r Время с использованием AM или PM %S Секунды (00 … 59) %s Секунды (00 … 59) %T Время (ЧЧ:ММ:СС) %U Неделя (00 … 53). Первый день недели – Воскресенье %u Неделя (00 … 53). Первый день недели – Понедельник %V Неделя (00 … 53). Первый день недели – Воскресенье. Используется с %X %v Неделя (00 … 53). Первый день недели – Понедельник. Используется с %x %W День недели %w День недели (0 – Воскресенье … 6 – Суббота) %X Год для недели. Воскресенье – первый день недели. Используется с %V %x Год для недели. Понедельник – первый день недели. Используется с %v %Y Год (YYYY) %y Год (YY) %% Символ .%. %x То же самое для любых элементов, указанных выше

Имя дня (DAYNAME())

День месяца (DAYOFMONTH())

День недели (DAYOFWEEK())

День в году (DAYOFYEAR())

Неделя (WEEK())

На этом мы заканчиваем изучение функций даты в языке SQL. В следующей статье мы рассмотрим временные таблицы.

📎📎📎📎📎📎📎📎📎📎