Funciones TO y FROM para fechas en SQL

| Última modificación: 12 de julio de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Si quieres seguir aprendiendo sobre SQL, es primordial que conozcas las funciones TO y FROM para fechas en SQL, pues ambos elementos te permitirán jugar con los formatos de las fecha y, por lo tanto, cumplir con los objetivos de cualquier programa en el que estés emprendiendo.

Es por eso que, en este artículo, te contaremos y mostraremos con ejemplos prácticos en qué consisten las funciones TO y FROM para fechas en SQL.

Funciones TO y FROM para fechas en SQL

Las fechas son un gran elemento dentro de las bases de datos, pues establecen una relación con un dato, un campo y el momento en el que un dato se ha ingresado.

A su vez, las fechas pueden ser el elemento que determinará la forma en la que se procede sobre una base de datos relacional, ya que pueden ser los campos que determinarán todo el proceso posterior.

SELECT TO_DAYS and SELECT FROM_DAYS

En primer lugar, te hablaremos acerca del objetivo principal de este artículo, que es el conocer las funciones de SELECT TO_DAYS and SELECT FROM_DAYS. Estos te permitirán cambiar el tipo de formato de las fechas que encontrarás en tus bases de datos.

Así pues, la primera sentencia se utiliza para convertir una fecha con un formato específico; en este caso, es un conjunto de números que se establecen en cadenas.

SELECT TO_DAYS ('1989 - 12 - 17 20:30:15:000001');

Una vez ejecutes esta instrucción, podrás visualizar una tabla con el resultado, como podrás ver a continuación:

TO_DAYS (‘1989 – 12 – 17 20:30:15:000001’)
726818

En contraste, para pasar de este formato específico a un formato normal de fecha deberás utilizar la sentencia contraria, es decir, la sentencia de FROM_DAYS, a la que le pasará el conjunto de números, es decir, la cadena.

Esto se presenta de la siguiente manera:

SELECT FROM_DAYS (726818);

Una vez ejecutada la sentencia, podrás visualizar los resultados en la siguiente tabla de datos:

FROM_DAYS (726818)
2022 – 11 – 18 20:30:15:000001

De esta manera, has podido intercambiar el formato de las fechas de un tipo a otro y visceversa.

Obtener datos con STR_TO_DATES

Por otro lado, el trabajo de datos con MySQL también te permite realizar cambios de formatos para obtener una fecha cuando el dato a transformar es un string o una cadena. Para ello, vas a utilizar la sentencia STR_TO_DATES () y le pasarás la fecha en formato string, así como el formato con el que quieres obtener la fecha. En este caso, escogeremos el formato que hemos visto en un artículo anterior sobre las fechas principales en SQL y la función date_format.

SELECT STR_TO_DATES ('17/12/1989', '%d, %m , %Y');

Una vez ejecutada la sentencia, podrás visualizar una tabla con los resultados en la máquina virtual, similar a la que te presentaremos a continuación:

STR_TO_DATES (’17/12/1989′, ‘%d, %m , %Y’)
1989 – 12 – 17

Obtener datos con SEC_TO_TIME

Asimismo, dentro de estas formas para transformar datos en SQL también encontramos una sentencia que te permitirá cambiar, a partir de un segundo, a un formato de tiempo que se da en horas, minutos y segundos, es decir, HH:MM:SS. Para que entiendas cómo se vería según la cantidad de segundos, te traemos un ejemplo, donde solo utilizamos la función SECT_TO_TIME:

SELECT SEC_TO_TIME (1),
. SEC_TO_TIME (-70);
. SEC_TO_TIME (7001),
SEC_TO_TIME (1) SEC_TO_TIME (-70)SEC_TO_TIME (7001)
00:00:01-00:01:1001:56:41

Obtener datos con TIME_TO_SEC

Por último, si, por el contrario, necesitas una función que convierta datos con el formato de horas, minutos y segundos en solo un formato de segundos, tendrás que intercambiar de posiciones, es decir, utilizar la función de TIME_TO_SEC.

Para emplear esta función, solo tendrás que añadir el formato de TIME dentro del paréntesis.

SELECT TIME_TO_SEC ('00:00:01'), TIME_TO_SEC ('01:54:41'), TIME_TO_SEC ('-00:01:18');

Al pasar las instrucciones, tendrás los resultados en una tabla de datos como la siguiente:

TIME_TO_SEC (’01:56:41′)TIME_TO_SEC (’00:00:01′)TIME_TO_SEC (‘-00:01:18’)
70011-70

Ya que has llegado hasta aquí, ahora conoces en qué consisten las funciones TO y FROM para fechas en SQL, por lo que puedes implementar esta serie de instrucciones si lo crees necesario. No obstante, todas tus ganas de aprender no se pueden quedar aquí, porque hay mucho más por aprender y practicar. Es por eso que queremos recomendarte nuestra formación intensiva sobre databases: Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp. De esta manera, podrás sacarle el mayor provecho a tus habilidades. ¡Solicita información e impulsa tu vida!

Sandra Navarro

Business Intelligence & Big Data Advisor & Coordinadora del Bootcamp en Data Science, Big Data & Machine Learning.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado