MySQL DATE FORMAT()

Как показать все индексы в MySQL или схеме База данных

Формат даты по умолчанию в MySQL — «ГГГГ-ММ-ДД». Если значение даты не указано в правильном формате при вставке данных в базу данных. Может возникнуть ошибка или будет вставлено неправильное значение. Иногда требуется отобразить значение даты в другом формате, например «ДД-ММ-ГГГГ» или «ММ-ДД-ГГГГ», или название месяца вместо числового значения после считывания данных из таблицы базы данных. Функция DATE_FORMAT() MySQL используется для получения форматированного вывода даты на основе требований программирования. В этом руководстве показаны различные способы использования этой функции в MySQL.

Синтаксис:

Синтаксис функции DATE_FORMAT() приведен ниже.

DATE_FORMAT(date_value, format)

Здесь первый аргумент содержит дату или значение DateTime из поля даты таблицы базы данных. Второй аргумент содержит спецификатор формата, определенный как «%», для получения форматированного вывода значения даты. Различные типы спецификаторов формата описаны в следующей части руководства.

Спецификаторы формата даты

В качестве значения формата функции DATE_FORMAT() можно использовать один или несколько спецификаторов формата. Спецификаторы формата, используемые для форматирования даты в MySQL, приведены ниже.

Имя спецификатора Описание
Он используется для печати коротких названий дней недели. (Вс..Сб)
%b Он используется для печати коротких названий месяцев. (янв..дек)
Он используется для печати числовых названий месяцев. (0..12)
%d Он используется для печати дня месяца с ведущими 0. (00..31)
%D Он используется для печати дня месяца с суффиксом, например, 1 , 2 — й, 3 — й, 4  и т. д.
Он используется для печати дня месяца без ведущих 0. (0..31)
%f Он используется для печати значений даты в микросекундах. (000000..999999)
%j Он используется для печати дня года с ведущими 0. (000..366)
Он используется для печати числового значения месяца с ведущими 0. (00..12)
Он используется для печати полного названия месяца. (январь..декабрь)
%U Он используется для печати номера недели в году, начиная с 00, где воскресенье — первый день недели. Режим НЕДЕЛЯ() 0. (00..53)
%u Он используется для печати номера недели года, начиная с 00, где понедельник — первый день недели. НЕДЕЛЯ() режим 1. (00..53)
%V Он используется для печати номера недели года, начиная с 01, где воскресенье — первый день недели. НЕДЕЛЯ() режим 2. (01..53)
%v Он используется для печати номера недели года, начиная с 01, где понедельник — первый день недели. НЕДЕЛЯ() режим 3. (01..53)
%w Он используется для печати числового дня недели, где 0 представляет воскресенье. (0..6)
%W Используется для печати полного названия дня недели. (Воскресенье суббота)
%ИКС Он используется для печати года недели, где воскресенье — первый день недели, числовой, четырехзначный; используется с %V
%Икс Он используется для печати года недели, где понедельник — первый день недели, числовой, четыре цифры; используется с %v
Он используется для печати двух цифр года.
%Y Он используется для печати четырех цифр года.
Читайте также:  Как усечь таблицу в MySQL

Использование DATE_FORMAT()

В этой части руководства показаны различные варианты использования функции DATE_FORMAT() в MySQL.

Пример 1: Использование одного спецификатора формата

В функции DATE_FORMAT() следующего запроса SELECT использовались три разных спецификатора. %D напечатает день месяца с суффиксом даты. %M напечатает полное название месяца даты. %Y напечатает 4 — значное значение года даты.

SELECT DATE_FORMAT(‘2022-01-05’, %D’) AS `Day of the date`,

DATE_FORMAT(‘2022-01-05’, %M’) AS `Month of the date`,

DATE_FORMAT(‘2022-01-05’, %Y’) AS `Year of the date`;

Выход:

В функции DATE_FORMAT() следующего запроса

Пример 2: использование спецификатора множественного формата

В предыдущем примере в каждой функции DATE_FORMAT() использовался один спецификатор формата. Несколько спецификаторов формата использовались в функции DATE_FORMAT() следующего запроса SELECT. Отформатированное значение даты будет напечатано после выполнения следующего запроса.

SELECT ‘2022-05-03’ AS `Original Date`,

DATE_FORMAT(‘2022-05-03’, %d-%m-%Y’) AS `Formatted Date`;

Выход:

В предыдущем примере в каждой функции DATE_FORMAT() использовался

Пример 3: Использование нескольких спецификаторов формата для текущей даты

Несколько спецификаторов формата использовались в функции DATE_FORMAT() следующего запроса SELECT для форматирования текущей системной даты. На выходе будут напечатаны название дня недели текущей даты, день текущей даты с суффиксом и 4 цифры года текущей даты.

SELECT DATE_FORMAT(NOW(), %W, %%M, %Y’) AS Today;

Выход:

Несколько спецификаторов формата использовались в функции DATE_FORMAT()

Пример 4: Форматирование поля даты в таблице базы данных

Вы должны создать таблицу базы данных с данными в базе данных MySQL, чтобы проверить использование функции DATE_FORMAT() в данных таблицы.

Откройте терминал и подключитесь к серверу MySQL, выполнив следующую команду.

$ sudo mysql u root

Выполните следующую команду, чтобы создать базу данных с именем test_db.

CREATE DATABASE test_db;

Выполните следующую команду, чтобы выбрать базу данных.

USE test_db;

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

CREATE TABLE `employees` (

`id` int(11) AUTO_INCREMENT,

`name` varchar(50) NOT NULL,

`post` varchar(25) NOT NULL,

`joining_date` date NOT NULL, PRIMARY KEY(id));

Выполните следующий запрос, чтобы вставить две записи в таблицу сотрудников.

INSERT INTO `employees` (`id`, `name`, `post`, `joining_date`)

VALUES (NULL, ‘Nur Jahan’, ‘Assistant Manager’, ‘2021-01-05’),

(NULL, ‘Asif Iqbal’, ‘Manager’, ‘2019-03-20’);

Выполните следующие два запроса SELECT, чтобы проверить исходное содержимое таблицы сотрудников и отформатированное значение даты в таблице сотрудников.

SELECT * FROM employees;

SELECT id AS ID, Name, Post, DATE_FORMAT(joining_date, %%%Y’) AS `Joining Date` FROM employees;

Выход:

Читайте также:  Как получить сегодняшнюю дату в запросе MySQL?

Выполните следующие два запроса SELECT, чтобы проверить

Заключение

Использование функции DATE_FORMAT() с различными спецификаторами формата даты в запросе SELECT было описано в этом руководстве с табличными данными и без табличных данных. Я надеюсь, что пользователи MySQL смогут правильно использовать эту функцию в запросе после прочтения этого руководства.

Оцените статью
bestprogrammer.ru
Добавить комментарий

Adblock
detector