Problema:
Vorresti cambiare il formato dei dati di data e ora in un database MySQL.
Esempio:
Il nostro database ha una tabella denominata student_platform
con i dati nelle colonne id
, first_name
, last_name
e registration_datetime
.
id | nome | cognome | data_registrazione |
---|---|---|---|
1 | Lora | Loren | 23-02-2019 12:04:23 |
2 | Anna | Fabio | 10-07-2018 10:12:15 |
3 | Tom | Jackson | 2019-03-09 08:20:33 |
4 | Riccardo | Williams | 30-09-2018 06:07:34 |
Per ogni studente, otteniamo il nome, il cognome e la data e l'ora di registrazione. Tuttavia, vogliamo visualizzare la data e l'ora nel seguente formato:nome abbreviato del giorno della settimana, virgola, anno, nome del mese, giorno del mese e ora in ore, minuti e secondi. Dovrebbe assomigliare a questo:
Tue, 2019 February 17 11:18:55
Soluzione:
Useremo il DATE_FORMAT()
funzione. Ecco la domanda che scriveresti:
SELECT first_name, last_name, DATE_FORMAT(registration_datetime,’%a, %Y %M %e %H:%i:%s’) AS format_registration_datetime FROM student_platform;
Ecco il risultato della query:
first_name | cognome | format_registration_datetime |
---|---|---|
Lora | Loren | Sab, 23 febbraio 2019 12:04:23 |
Anna | Fabio | Mar, 10 luglio 2018 10:12:15 |
Tom | Jackson | Sab, 9 marzo 2019 08:20:33 |
Riccardo | Williams | Lun, 30 settembre 2019 06:07:34 |
Discussione:
In un database MySQL, la funzione DATE_FORMAT() consente di visualizzare i dati di data e ora in un formato modificato.
Questa funzione accetta due argomenti. Il primo è la data/data/ora da riformattare; può essere una colonna data/ora/dataora/marcatura temporale o un'espressione che restituisce un valore in uno di questi tipi di dati. (Nel nostro esempio, utilizziamo il registration_datetime
colonna della dataora tipo di dati.)
Il secondo argomento è una stringa contenente il formato di data e ora desiderato. MySQL rende disponibili una serie di specificatori, come:
- %a – Nome abbreviato del giorno della settimana.
- %Y – Anno, a 4 cifre.
- %M – Nome completo del mese.
- %e – Giorno del mese (da 1 a 31).
- %H – Ora (dalle 00 alle 23).
- %i – Minuti (da 00 a 59).
- %s – Secondi (da 00-59).
Puoi saperne di più sugli identificatori di data e ora qui, nella documentazione ufficiale di MySQL.
Ad esempio, Lora Lorens registrato il '2019-02-23 12:04:23'. Ora, la data e l'ora della sua registrazione hanno il nuovo formato "Sab, 23 febbraio 2019 12:04:23".