En SQL, las fechas son complicadas para los novatos, ya que al trabajar con una base de datos, el formato de la fecha en la tabla debe coincidir con la fecha de entrada para poder insertar. En varios escenarios, en lugar de la fecha, se utiliza la fecha y la hora (la hora también está relacionada con la fecha).
Algunas de las funciones de fecha importantes ya se han discutido en la publicación anterior . La idea básica de esta publicación es conocer el funcionamiento o la sintaxis de todas las funciones de fecha:
A continuación se muestran las funciones de fecha que se utilizan en SQL:
- ADDDATE(): Devuelve una fecha después de que se haya agregado un determinado intervalo de hora/fecha.
Syntax: SELECT ADDTIME("2018-07-16 02:52:47", "2");
Salida: 2018-07-16 02:52:49
- ADDTIME(): Devuelve una hora/fecha después de que se haya agregado un cierto intervalo de tiempo.
Syntax: SELECT ADDTIME("2017-06-15 09:34:21", "2");
Salida: 2017-06-15 09:34:23
- CURDATE(): Devuelve la fecha actual.
Syntax: SELECT CURDATE();
Salida: 2018-07-16
- CURRENT_DATE(): Devuelve la fecha actual.
Syntax: SELECT CURRENT_DATE();
Salida: 2018-07-16
- CURRENT_TIME(): Devuelve la hora actual.
Syntax: SELECT CURRENT_TIME();
Salida: 02:53:15
- CURRENT_TIMESTAMP(): Devuelve la fecha y hora actual.
Syntax: SELECT CURRENT_TIMESTAMP();
Salida: 2018-07-16 02:53:21
- CURTIME(): Devuelve la hora actual.
Syntax: SELECT CURTIME();
Salida: 02:53:28
- DATE(): Extrae el valor de la fecha de una expresión de fecha o fecha y hora.
Syntax: SELECT DATE("2017-06-15");
Salida: 2017-06-15
- DATEDIFF(): Devuelve la diferencia en días entre dos valores de fecha.
Syntax: SELECT DATEDIFF("2017-06-25", "2017-06-15");
Salida: 10
- DATE_ADD(): Devuelve una fecha después de que se haya agregado un cierto intervalo de hora/fecha.
Syntax: SELECT DATE_ADD("2018-07-16", INTERVAL 10 DAY);
Salida: 2018-07-16
- DATE_FORMAT(): Formatea una fecha según lo especificado por una máscara de formato.
Syntax: SELECT DATE_FORMAT("2018-06-15", "%Y");
Salida: 2018
- DATE_SUB(): Devuelve una fecha después de haber restado un cierto intervalo de hora/fecha.
Syntax: SELECT DATE_SUB("2017-06-15", INTERVAL 10 DAY);
Salida: 2018-07-16
- DÍA(): Devuelve la parte del día de un valor de fecha.
Syntax: SELECT DAY("2018-07-16");
Salida: 16
- DAYNAME(): Devuelve el nombre del día de la semana para una fecha.
Syntax: SELECT DAYNAME('2008-05-15');
Salida: jueves
- DAYOFMONTH(): Devuelve la parte del día de un valor de fecha.
Syntax: SELECT DAYOFMONTH('2018-07-16');
Salida: 16
- DAYWEEK(): Devuelve el índice del día de la semana para un valor de fecha.
Syntax: SELECT WEEKDAY("2018-07-16");
Salida: 0
- DAYOFYEAR(): Devuelve el día del año para un valor de fecha.
Syntax: SELECT DAYOFYEAR("2018-07-16");
Salida: 197
- EXTRACT(): Extrae partes de una fecha.
Syntax: SELECT EXTRACT(MONTH FROM "2018-07-16");
Salida: 7
- FROM_DAYS(): Devuelve un valor de fecha a partir de una representación numérica del día.
Syntax: SELECT FROM_DAYS(685467);
Salida: 1876-09-29
- HORA(): Devuelve la parte de la hora de un valor de fecha.
Syntax: SELECT HOUR("2018-07-16 09:34:00");
Salida: 9
- LAST_DAY(): Devuelve el último día del mes para una fecha determinada.
Syntax: SELECT LAST_DAY('2018-07-16');
Salida: 2018-07-31
- LOCALTIME(): Devuelve la fecha y hora actual.
Syntax: SELECT LOCALTIME();
Salida: 2018-07-16 02:56:42
- LOCALTIMESTAMP(): Devuelve la fecha y hora actual.
Syntax: SELECT LOCALTIMESTAMP();
Salida: 2018-07-16 02:56:48
- MAKEDATE(): Devuelve la fecha de un determinado año y el valor del día del año.
Syntax: SELECT MAKEDATE(2009, 138);
Salida: 2009-05-18
- MAKETIEMPO(): Devuelve el tiempo para una determinada combinación de horas, minutos y segundos.
Syntax: SELECT MAKETIME(11, 35, 4);
Salida: 11:35:04