Problème :
Vous souhaitez obtenir la date à partir d'une colonne de date et d'heure dans une base de données MySQL.
Exemple :
Notre base de données contient une table nommée travel avec des données dans les colonnes id , first_name , last_name , et timestamp_of_booking .
| identifiant | prénom | nom_de_famille | timestamp_of_booking |
|---|---|---|---|
| 1 | Lisa | Watson | 2019-04-20 14:15:34 |
| 2 | Tom | Smith | 2019-03-31 20:10:14 |
| 3 | Andy | Markus | 2019-08-03 10:05:45 |
| 4 | Alice | Marron | 2019-07-01 12:47:54 |
Pour chaque voyageur, obtenons son prénom, son nom et la date de réservation uniquement . (Remarque :Le timestamp_of_booking colonne contient à la fois des données de date et d'heure.)
Solution :
Nous utiliserons le DATE() une fonction. Voici la requête que vous écririez :
SELECT first_name,
last_name,
DATE(timestamp_of_booking)
AS date_of_booking
FROM travel;
Voici le résultat de la requête :
| prénom | nom_de_famille | date_of_booking |
|---|---|---|
| Lisa | Watson | 2019-04-20 |
| Tom | Smith | 2019-03-31 |
| Andy | Markus | 2019-08-03 |
| Alice | Marron | 2019-07-01 |
Discussion :
Dans MySQL, utilisez la fonction DATE() pour récupérer la date à partir d'une valeur datetime ou timestamp. Cette fonction ne prend qu'un seul argument – soit une expression qui renvoie une valeur date/datetime/timestamp ou le nom d'une colonne timestamp/datetime. (Dans notre exemple, nous utilisons une colonne de timestamp type de données.)
La fonction DATE() renvoie uniquement les informations de date. Dans notre exemple, il renvoie "2019-03-31" pour Tom Smith's date de réservation. Notez que les informations de temps ne sont pas incluses.