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'