MySQL: función SUBDATE

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

MySQL: función SUBDATE

Este tutorial de MySQL explica cómo usar MySQL Función SUBFECHA Con sintaxis y ejemplos.

describir

La función SUBDATE de MySQL devuelve una fecha después de la cual se resta un intervalo de hora/fecha.

sintaxis

La sintaxis de la función SUBDATE en MySQL es:

SUBDATE( date, INTERVAL value unit )

o

SUBDATE( date, days )

parámetro o parámetro

fecha La fecha a partir de la cual se debe restar el intervalo. days El número de días a restar de la fecha (segunda sintaxis). valor El valor del intervalo de hora/fecha que desea restar. Puede especificar valores positivos y negativos para este parámetro (primera sintaxis).unidad

El tipo de unidad del intervalo, como DÍA, MES, MINUTO, HORA, etc. Puede ser uno de los siguientes (primera sintaxis):

unidad compatibilidad
microsegundos 4.1.1+
segundo 3.2.3+
minuto 3.2.3+
Hora 3.2.3+
día 3.2.3+
Semana 5+
Luna 3.2.3+
moneda de 25 centavos 5+
año 3.2.3+
SEGUNDO_MICROSEGUNDO 4.1.1+
MINUTO_MICROSEGUNDO 4.1.1+
MINUTO_SEGUNDO 4.1.1+
horas_microsegundos 4.1.1+
HORA_SEGUNDO 4.1.1+
HORA_MINUTO 3.2.3+
DÍA_MICROSEGUNDO 4.1.1+
DÍA_SEGUNDO 3.2.3+
DÍA_MINUTO 3.2.3+
DIA_HORA 3.2.3+
AÑO MES 3.2.3+

notas

  • Si especifica un valor de intervalo que es demasiado corto para las unidades que especifica, la función SUBDATE asume que no se proporciona la parte más a la izquierda del valor del intervalo.
  • La función SUBDATE (solo la primera sintaxis) es un sinónimo de la función DATE_SUB.
  • Usar la función SUBDATE con un valor negativo como argumento es equivalente a usar la función ADDDATE.
  • Consulte también las funciones DATE_ADD, DATE_SUB, ADDDATE, ADDTIME y SUBTIME.

aplicar para

La función SUBDATE se puede utilizar en las siguientes versiones de MySQL:

  • MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23

ejemplo

Veamos algunos ejemplos de la función SUBDATE de MySQL y exploremos cómo usar la función SUBDATE en MySQL.

Por ejemplo:

mysql> SELECT SUBDATE('2014-02-13 08:44:21.000001', INTERVAL 4 MICROSECOND);
Result: '2014-02-13 08:44:20.999997'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL 20 SECOND);
Result: '2014-02-13 08:44:01'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL 25 MINUTE);
Result: '2014-02-13 08:19:21'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL 2 HOUR);
Result: '2014-02-13 06:44:21'

mysql> SELECT SUBDATE('2014-02-13', INTERVAL 10 DAY);
Result: '2014-02-03'

mysql> SELECT SUBDATE('2014-02-13', 10);
Result: '2014-02-03'

mysql> SELECT SUBDATE('2014-02-13', INTERVAL 12 WEEK);
Result: '2013-11-21'

mysql> SELECT SUBDATE('2014-02-13', INTERVAL 3 MONTH);
Result: '2013-11-13'

mysql> SELECT SUBDATE('2014-02-13', INTERVAL 3 QUARTER);
Result: '2013-05-13'

mysql> SELECT SUBDATE('2014-02-13', INTERVAL 5 YEAR);
Result: '2009-02-13'

mysql> SELECT SUBDATE('2014-02-13 08:44:21.000001', INTERVAL '12.000001' SECOND_MICROSECOND);
Result: '2014-02-13 08:44:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21.000001', INTERVAL '3:12.000001' MINUTE_MICROSECOND);
Result: '2014-02-13 08:41:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL '3:12' MINUTE_SECOND);
Result: '2014-02-13 08:41:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21.000001', INTERVAL '1:03:12.000001' HOUR_MICROSECOND);
Result: '2014-02-13 07:41:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL '1:03:12' HOUR_SECOND);
Result: '2014-02-13 07:41:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL '1:03' HOUR_MINUTE);
Result: '2014-02-13 07:41:21'

mysql> SELECT SUBDATE('2014-02-13 08:44:21.000001', INTERVAL '7 1:03:12.000001' DAY_MICROSECOND);
Result: '2014-02-06 07:41:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL '7 1:03:12' DAY_SECOND);
Result: '2014-02-06 07:41:09'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL '7 1:03' DAY_MINUTE);
Result: '2014-02-06 07:41:21'

mysql> SELECT SUBDATE('2014-02-13 08:44:21', INTERVAL '7 1' DAY_HOUR);
Result: '2014-02-06 07:44:21'

mysql> SELECT SUBDATE('2014-02-13', INTERVAL '5-3' YEAR_MONTH);
Result: '2008-11-13'