Problema:
Le gustaría obtener la fecha de una columna de fecha y hora en una base de datos MySQL.
Ejemplo:
Nuestra base de datos tiene una tabla llamada travel con datos en las columnas id , first_name , last_name y timestamp_of_booking .
| id | nombre | apellido | timestamp_of_booking |
|---|---|---|---|
| 1 | Lisa | Watson | 2019-04-20 14:15:34 |
| 2 | Tom | Smith | 2019-03-31 20:10:14 |
| 3 | Andy | Marcos | 2019-08-03 10:05:45 |
| 4 | Alicia | Marrón | 2019-07-01 12:47:54 |
Para cada viajero, obtengamos su nombre y apellido y la fecha de reserva solo . (Nota:el timestamp_of_booking columna contiene datos de fecha y hora.)
Solución:
Usaremos el DATE() función. Esta es la consulta que escribirías:
SELECT first_name,
last_name,
DATE(timestamp_of_booking)
AS date_of_booking
FROM travel;
Este es el resultado de la consulta:
| nombre | apellido | fecha_de_la_reserva |
|---|---|---|
| Lisa | Watson | 2019-04-20 |
| Tomás | Smith | 2019-03-31 |
| Andy | Marcos | 2019-08-03 |
| Alicia | Marrón | 2019-07-01 |
Discusión:
En MySQL, use la función DATE() para recuperar la fecha de un valor de fecha y hora o marca de tiempo. Esta función solo toma un argumento, ya sea una expresión que devuelve un valor de fecha/fechahora/marca de tiempo o el nombre de una columna de marca de tiempo/fechahora. (En nuestro ejemplo, usamos una columna de timestamp tipo de datos.)
La función DATE() devuelve solo la información de la fecha. En nuestro ejemplo, devuelve '2019-03-31' para Tom Smith's fecha para registrarse. Tenga en cuenta que la información de tiempo no está incluida.