Mysql
 sql >> база данни >  >> RDS >> Mysql

DATE_FORMAT() Примери – MySQL

Тази статия съдържа примери за DATE_FORMAT() функция в MySQL.

DATE_FORMAT() функцията ви позволява да върнете дата в определен формат. Можете например да го използвате, за да върнете  2020-06-18 като четвъртък, юни 2020 г. , или какъвто друг формат ви е необходим.

Синтаксис

Синтаксисът е така:

DATE_FORMAT(date,format)

Където date е датата, която искате да форматирате, и format указва как трябва да бъде форматиран.

За списък с валидни спецификатори на формат вижте таблицата в долната част на тази статия. Стойността на формата трябва да започва със знак за процент (% ).

Пример

Ето пример за демонстрация.

SELECT DATE_FORMAT('2020-06-18', '%W, %M %Y') AS 'Result';

Резултат:

+---------------------+
| Result              |
+---------------------+
| Thursday, June 2020 |
+---------------------+

Кратки/съкратени имена на дни и месеци

Ето пример, който форматира резултата в кратки имена на дни и месеци.

SELECT DATE_FORMAT('2020-06-18', '%a, %b %Y') AS 'Result';

Резултат:

+---------------+
| Result        |
+---------------+
| Thu, Jun 2020 |
+---------------+

Пример за база данни

Ето пример, при който форматираме стойността, върната от колона на база данни, която се съхранява като стойност за дата и час.

USE sakila;
SELECT
  payment_date AS 'Date/Time',
  DATE_FORMAT(payment_date, '%W, %M %Y') AS 'Date'
FROM payment
WHERE payment_id = 1;

Резултат:

+---------------------+---------------------+
| Date/Time           | Date                |
+---------------------+---------------------+
| 2005-05-25 11:30:37 | Wednesday, May 2005 |
+---------------------+---------------------+

Форматиране на времето

Можете също да използвате DATE_FORMAT() за да форматирате компонента за време на datetime стойност. Пример:

USE sakila;
SELECT
  payment_date AS 'Date/Time',
  DATE_FORMAT(payment_date, '%h:%i:%s') AS 'Time'
FROM payment
WHERE payment_id = 1;

Резултат:

+---------------------+----------+
| Date/Time           | Time     |
+---------------------+----------+
| 2005-05-25 11:30:37 | 11:30:37 |
+---------------------+----------+

Ето още един пример, в който добавям AM/PM обозначение:

USE sakila;
SELECT
  payment_date AS 'Date/Time',
  DATE_FORMAT(payment_date, '%h:%i %p') AS 'Time'
FROM payment
WHERE payment_id = 1;

Резултат:

+---------------------+----------+
| Date/Time           | Time     |
+---------------------+----------+
| 2005-05-25 11:30:37 | 11:30 AM |
+---------------------+----------+

Налични спецификатори

Следните спецификатори могат да се използват за определяне на формата за връщане. Стойността на формата трябва да започва със знак за процент (% ).

Спецификатор Описание
%a Съкратено име на делничен ден (Sun ..Sat )
%b Съкратено име на месеца (Jan ..Dec )
%c Месец, числов (0 ..12 )
%D Ден от месеца с английски суфикс (0th , 1st , 2nd , 3rd , …)
%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 Час (0 ..23 )
%l Час (1 ..12 )
%M Име на месеца (Jan ..December )
%m Месец, цифров (00 ..12 )
%p AM или PM
%r Време, 12 часа (hh:mm:ss последвано от AM или PM )
%S Секунди (00 ..59 )
%s Секунди (00 ..59 )
%T Време, 24 часа (hh:mm:ss )
%U Седмица (00 ..53 ), където неделя е първият ден от седмицата; WEEK() режим 0
%u Седмица (00 ..53 ), където понеделник е първият ден от седмицата; WEEK() режим 1
%V Седмица (01 ..53 ), където неделя е първият ден от седмицата; WEEK() режим 2; използва се с %X
%v Седмица (01 ..53 ), където понеделник е първият ден от седмицата; WEEK() режим 3; използва се с %x
%W Име на деня от седмицата (Sunday ..Sat )
%w Ден от седмицата (0 =Неделя..6 =събота)
%X Година за седмицата, където неделя е първият ден от седмицата, число, четири цифри; използва се с %V
%x Година за седмицата, където понеделник е първият ден от седмицата, число, четири цифри; използва се с %v
%Y Година, число, четири цифри
%y Година, число (две цифри)
%% Литерал % символ
%x x , за всеки „x ” не е изброено по-горе


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL формат за дата

  2. Ограничението CHECK в MySQL не работи

  3. Фатална грешка:Неуловено изключение „mysqli_sql_exception“ със съобщение „Не е използван индекс в заявката/подготвеното изявление“

  4. Как да създавате и използвате MySQL изгледи

  5. Как да изчислим седмично активни потребители (WAU) в MySQL