Mysql
 sql >> Baza danych >  >> RDS >> Mysql

DATE_FORMAT() Przykłady – MySQL

Ten artykuł zawiera przykłady metody DATE_FORMAT() funkcja w MySQL.

DATE_FORMAT() funkcja umożliwia zwrócenie daty w określonym formacie. Na przykład możesz go użyć, aby zwrócić 2020-06-18 jako czwartek, czerwiec 2020 r. , lub jakikolwiek inny wymagany format.

Składnia

Składnia wygląda tak:

DATE_FORMAT(date,format)

Gdzie date to data, którą chcesz sformatować, a format określa, jak powinien być sformatowany.

Lista prawidłowych specyfikatorów formatu znajduje się w tabeli na dole tego artykułu. Wartość formatu musi zaczynać się od znaku procentu (% ).

Przykład

Oto przykład do zademonstrowania.

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

Wynik:

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

Krótkie/skrócone nazwy dni i miesięcy

Oto przykład formatowania wyniku na krótkie nazwy dnia i miesiąca.

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

Wynik:

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

Przykład bazy danych

Oto przykład, w którym formatujemy wartość zwróconą z kolumny bazy danych, która jest przechowywana jako wartość daty i godziny.

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

Wynik:

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

Formatowanie czasu

Możesz także użyć DATE_FORMAT() aby sformatować składnik czasu data-godzina wartość. Przykład:

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

Wynik:

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

Oto kolejny przykład, w którym dodaję AM/PM oznaczenie:

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

Wynik:

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

Dostępne specyfikatory

Poniższe specyfikatory mogą służyć do określenia formatu zwracanego. Wartość formatu musi zaczynać się od znaku procentu (% ).

Specyfikator Opis
%a Skrócona nazwa dnia tygodnia (Sun ..Sat )
%b Skrócona nazwa miesiąca (Jan ..Dec )
%c Miesiąc, numeryczny (0th ..12 )
%D Dzień miesiąca z angielskim sufiksem (0th , 1st , 2nd , 3rd , …)
%d Dzień miesiąca, numeryczny (00 ..31 )
%e Dzień miesiąca, numeryczny (0th ..31 )
%f Mikrosekundy (000000 ..999999 )
%H Godzina (00 ..23 )
%h Godzina (01 ..12 )
%I Godzina (01 ..12 )
%i Minuty, numeryczne (00 ..59 )
%j Dzień roku (001 ..366 )
%k Godzina (0th ..23 )
%l Godzina (1 ..12 )
%M Nazwa miesiąca (January ..December )
%m Miesiąc, numerycznie (00 ..12 )
%p AM lub PM
%r Czas, 12 godzin (hh:mm:ss po którym następuje AM lub PM )
%S Sekundy (00 ..59 )
%s Sekundy (00 ..59 )
%T Czas, 24 godziny (hh:mm:ss )
%U Tydzień (00 ..53 ), gdzie niedziela jest pierwszym dniem tygodnia; WEEK() tryb 0
%u Tydzień (00 ..53 ), gdzie poniedziałek to pierwszy dzień tygodnia; WEEK() tryb 1
%V Tydzień (01 ..53 ), gdzie niedziela jest pierwszym dniem tygodnia; WEEK() tryb 2; używane z %X
%v Tydzień (01 ..53 ), gdzie poniedziałek to pierwszy dzień tygodnia; WEEK() tryb 3; używane z %x
%W Nazwa dnia tygodnia (Sunday ..Saturday )
%w Dzień tygodnia (0th =Niedziela...6 =Sobota)
%X Rok tygodnia, w którym niedziela jest pierwszym dniem tygodnia, numeryczna, cztery cyfry; używane z %V
%x Rok tygodnia, gdzie poniedziałek to pierwszy dzień tygodnia, numeryczny, cztery cyfry; używane z %v
%Y Rok, numerycznie, cztery cyfry
%y Rok, numeryczny (dwie cyfry)
%% Dosłowny % znak
%x x , dla każdego „x ” nie wymienione powyżej


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak wstawić znak mb4 utf-8 (emotikony w ios5) w mysql?

  2. Błąd MySQL 1093 - Nie można określić tabeli docelowej do aktualizacji w klauzuli FROM

  3. Jak mogę połączyć dwie tabele MySQL?

  4. Ile wierszy w bazie danych to ZA DUŻO?

  5. Wybierz wiersz z najnowszą datą na użytkownika