Проблем:
Искате да промените формата на данните за дата и час в MySQL база данни.
Пример:
Нашата база данни има таблица с име student_platform
с данни в колоните id
, first_name
, last_name
и registration_datetime
.
id | first_name | фамилно_име | registration_datetime |
---|---|---|---|
1 | Лора | Лоренс | 23.02.2019 12:04:23 |
2 | Ан | Смит | 2018-07-10 10:12:15 |
3 | Том | Джаксън | 2019-03-09 08:20:33 |
4 | Ричард | Уилямс | 30.09.2018 06:07:34 |
За всеки ученик нека получим неговото име, фамилия и дата и час на регистрация. Искаме обаче да покажем датата и часа в следния формат:съкратено име на делничен ден, запетая, година, име на месец, ден от месеца и часът в часове, минути и секунди. Трябва да изглежда така:
Tue, 2019 February 17 11:18:55
Решение:
Ще използваме DATE_FORMAT()
функция. Ето заявката, която бихте написали:
SELECT first_name, last_name, DATE_FORMAT(registration_datetime,’%a, %Y %M %e %H:%i:%s’) AS format_registration_datetime FROM student_platform;
Ето резултата от заявката:
first_name | фамилно_име | format_registration_datetime |
---|---|---|
Лора | Лоренс | Сб, 23 февруари 2019 г., 12:04:23 ч. |
Ан | Смит | Вт, 10 юли 2018 г., 10:12:15 ч. |
Том | Джаксън | Сб, 9 март 2019 г., 08:20:33 ч. |
Ричард | Уилямс | Пн, 30 септември 2019 г. 06:07:34 |
Дискусия:
В MySQL база данни функцията DATE_FORMAT() ви позволява да показвате данни за дата и час в променен формат.
Тази функция приема два аргумента. Първият е датата/часът, който трябва да бъде преформатиран; това може да бъде колона за дата/време/дата и време/време или израз, връщащ стойност в един от тези типове данни. (В нашия пример използваме registration_datetime
колона на дата и час тип данни.)
Вторият аргумент е низ, съдържащ желания формат за дата и час. MySQL прави достъпни редица спецификатори, като:
- %a – Съкратено име на делничен ден.
- %Y – Година с 4 цифри.
- %M – Пълно име на месеца.
- %e – Ден от месеца (от 1 – 31).
- %H – Час (от 00-23).
- %i – Минути (от 00-59).
- %s – Секунди (от 00-59).
Можете да научите повече за спецификаторите за дата и час тук, в официалната документация на MySQL.
Например Лора Лоренс регистриран на „2019-02-23 12:04:23“. Сега датата и часът на нейната регистрация имат новия формат „Сб, 23 февруари 2019 г. 12:04:23“.