Mysql
 sql >> Database >  >> RDS >> Mysql

DATE_FORMAT() Esempi – MySQL

Questo articolo contiene esempi di DATE_FORMAT() funzione in MySQL.

Il DATE_FORMAT() La funzione consente di restituire una data in un formato specificato. Ad esempio, puoi utilizzarlo per restituire  2020-06-18 come giovedì giugno 2020 , o qualsiasi altro formato richiesto.

Sintassi

La sintassi è questa:

DATE_FORMAT(date,format)

Dove date è la data che vuoi formattare e format specifica come deve essere formattato.

Per un elenco di identificatori di formato validi, vedere la tabella in fondo a questo articolo. Il valore del formato deve iniziare con un segno di percentuale (% ).

Esempio

Ecco un esempio da dimostrare.

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

Risultato:

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

Nomi di giorni e mesi brevi/abbreviati

Ecco un esempio che formatta il risultato in nomi brevi di giorni e mesi.

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

Risultato:

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

Un esempio di database

Ecco un esempio in cui formattiamo il valore restituito da una colonna del database archiviata come valore datetime.

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

Risultato:

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

Formattare l'ora

Puoi anche usare DATE_FORMAT() per formattare il componente ora di un datetime valore. Esempio:

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

Risultato:

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

Ecco un altro esempio in cui aggiungo AM/PM designatore:

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

Risultato:

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

Specificatori disponibili

I seguenti specificatori possono essere utilizzati per specificare il formato di ritorno. Il valore del formato deve iniziare con un segno di percentuale (% ).

Specificatore Descrizione
%a Nome abbreviato del giorno della settimana (Sun ..Sat )
%b Nome abbreviato del mese (Jan ..Dec )
%c Mese, numerico (0 ..12 )
%D Giorno del mese con suffisso inglese (0th , 1st , 2nd , 3rd , …)
%d Giorno del mese, numerico (00 ..31 )
%e Giorno del mese, numerico (0 ..31 )
%f Microsecondi (000000 ..999999 )
%H Ora (00 ..23 )
%h Ora (01 ..12 )
%I Ora (01 ..12 )
%i Minuti, numerici (00 ..59 )
%j Giorno dell'anno (001 ..366 )
%k Ora (0 ..23 )
%l Ora (1 ..12 )
%M Nome del mese (January ..December )
%m Mese, numerico (00 ..12 )
%p AM o PM
%r Ora, 12 ore (hh:mm:ss seguito da AM o PM )
%S Secondi (00 ..59 )
%s Secondi (00 ..59 )
%T Ora, 24 ore (hh:mm:ss )
%U Settimana (00 ..53 ), dove domenica è il primo giorno della settimana; WEEK() modalità 0
%u Settimana (00 ..53 ), dove lunedì è il primo giorno della settimana; WEEK() modalità 1
%V Settimana (01 ..53 ), dove domenica è il primo giorno della settimana; WEEK() modalità 2; utilizzato con %X
%v Settimana (01 ..53 ), dove lunedì è il primo giorno della settimana; WEEK() modalità 3; utilizzato con %x
%W Nome del giorno della settimana (Sunday ..Saturday )
%w Giorno della settimana (0 =Domenica..6 =sabato)
%X Anno per la settimana in cui domenica è il primo giorno della settimana, numerico, a quattro cifre; utilizzato con %V
%x Anno della settimana, dove lunedì è il primo giorno della settimana, numerico, a quattro cifre; usato con %v
%Y Anno, numerico, quattro cifre
%y Anno, numerico (due cifre)
%% Un letterale % carattere
%x x , per qualsiasi “x ” non elencato sopra