MySQL DATE: cómo obtener una fecha en MySQL

El comando MySQL DATE permite extraer un valor de fecha de una entrada de tiempo. Esta función es especialmente útil para listas de pedidos, llamadas u otras acciones.

¿Qué es MySQL DATE?

Hay un gran número de parámetros que son útiles para tener una mejor visión y organización en MySQL. Permiten clasificar las diferentes tablas de mejor manera y permitir un acceso más rápido si es necesario. Con este fin, el sistema de gestión de bases de datos ofrece varios tipos de campos para almacenar información de fechas y horas. Al igual que MySQL TIME, MySQL DATETIME y MySQL TIMESTAMP, MySQL DATE es un comando especialmente práctico y al mismo tiempo muy sencillo que te proporciona un servicio valioso en tu trabajo diario con el sistema.

MySQL DATE se utiliza para valores que contienen una fecha, pero no cuentan con información de tiempo. La función toma la fecha de una expresión y establece la relación. Las entradas se almacenan siempre según el formato “AAAA-MM-DD”, el rango de valores posibles va de “1000-01-01” a “9999-12-31”.

La sintaxis de MySQL DATE

Si estás aprendiendo a usar MySQL y ya conoces comandos como MySQL DELETE, MySQL REPLACE y MySQL CONCAT, sabes que la sintaxis de estos comandos es relativamente sencilla. MySQL DATE no es una excepción. La estructura se reduce a lo siguiente:

DATE (Expresión)
bash

Es importante que la fecha de la expresión sea un valor permitido. Si no es el caso, el resultado será simplemente un valor nulo.

Ejemplos de uso de MySQL DATE

Los ejemplos prácticos son útiles para comprender mejor las facilidades que nos ofrece MySQL DATE en cada caso. Empecemos por el caso más sencillo, en el que solo aparece la fecha. El comando adecuado es el siguiente:

SELECT DATE ("2022-01-10");
bash

Al ejecutar este comando, el resultado es el siguiente:

2022-01-10
bash

Obtener la fecha de una entrada de tiempo

Sin embargo, MySQL DATE también te ofrece la opción de obtener la fecha de una entrada de tiempo más larga. Lo podemos ver en el siguiente ejemplo:

SELECT DATE ("2022-01-10 10:17:36");
bash

De nuevo, el resultado es el mismo:

2022-01-10
bash

Valor nulo en MySQL DATE

Sin embargo, si no se introduce un valor de fecha válido, no se obtiene ningún resultado. Lo podemos ver en el siguiente ejemplo:

SELECT DATE ("La fecha es el 10.01.2022");
bash

MySQL DATE para las transacciones de pedidos y la contabilidad

El siguiente ejemplo es muy bueno, ayuda a entender el uso práctico que tiene MySQL DATE. En este caso, suponemos que una empresa ha creado tablas para los productos pedidos y enviados. Para saber exactamente cuándo se ha pedido un producto, habría que consultar todas las entradas de la tabla de forma manual y, por tanto, dedicar mucho tiempo. MySQL DATE, en cambio, ofrece una forma mucho más rápida, extrae los datos a partir de la tabla existente. El comando busca automáticamente en la tabla que corresponde; el resultado muestra todos los datos del pedido en orden cronológico. Para nuestro ejemplo, supongamos que la tabla se llama “Pedidos”.

SELECT DATE (Fecha del pedido) FROM Pedidos;
bash

El resultado en este caso es el siguiente:

DATE (Fecha del pedido)
2021-11-27
2021-11-29
2022-01-10
2022-02-04
2022-02-17
bash

Comandos relacionados

Además del comando MySQL DATE, existen otras funciones similares que ayudan a mantener y editar una tabla. Entre ellas destaca MySQL DATEDIFF, que permite calcular los días entre dos fechas u horas. Otros comandos importantes son MySQL DATE_ADD, que suma valores de tiempo, en forma de intervalo, a un valor de fecha; MySQL DATE_FORMAT, que permite formatear una fecha; y MySQL DATE_SUB, que permite restar un valor de tiempo a un valor de fecha.

Formatos de fecha alternativos

Además de MySQL DATE, el sistema conoce otros tres formatos de fecha:

  • MySQL DATETIME: esta opción guarda la fecha y la hora en el formato AAAA-MM-DD HH:MM:SS. El intervalo de tiempo que puede utilizarse va desde el 1000-01-01 00:00:00 hasta el 9999-12-31 23:59:59.
  • MySQL TIMESTAMP: este formato es similar a MySQL DATETIME, pero tiene en cuenta las zonas horarias y convierte los valores al tiempo universal coordinado (UTC). Por lo tanto, el resultado también sigue la estructura AAAA-MM-DD HH:MM:SS, pero los valores que se pueden utilizar van desde 1970-01-01 00:00:01 UTC hasta 2038-01-09 03:14:17 UTC. Para las aplicaciones que deben tener en cuenta diferentes zonas horarias, MySQL TIMESTAMP es, por tanto, la mejor opción. Para fechas anteriores a 1970 o posteriores a 2038, se recomienda utilizar MySQL DATETIME.
  • MySQL TIME: MySQL TIME almacena la hora, pero no la fecha. El formato utilizado es HH:MM:SS y el intervalo de tiempo que se puede utilizar va de -838:59:59 a 838:59:59. Además instantes en el tiempo, con MySQL TIME también se pueden establecer intervalos de tiempo. Por ejemplo, un día serían 24:00:00.

Por lo tanto, si MySQL DATE no es la opción más adecuada, siempre puedes recurrir a una de las otras opciones.

¿Le ha resultado útil este artículo?
Page top