Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/11/2014, 09:34
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Necesito saber diferencia entre fechas con años y meses

Hola Jirson_Tavera:

Hasta donde recuerdo, no hay ninguna forma "directa" de obtener el dato con el formato que quieres, sin embargo, se me ocurren otras formas para llegar a un resultado, igual y tendrías que hacer algo de trabajo extra:

Si checas la documentación hay muchas funciones de fecha y hora que te pueden servir:

http://dev.mysql.com/doc/refman/5.5/...functions.html

Por ejemplo, si checas, la función PERIOD_DIFF te regresa la diferencia EN MESES entre dos periodos...

Código MySQL:
Ver original
  1. mysql> SELECT PERIOD_DIFF(EXTRACT(YEAR_MONTH FROM '2014-11-01'),
  2.     ->                    EXTRACT(YEAR_MONTH FROM '2012-10-30')) meses;
  3. +-------+
  4. | meses |
  5. +-------+
  6. |    25 |
  7. +-------+
  8. 1 row in set (0.00 sec)

observa que las fecha final es (2014-11-01) y la fecha inicial es (2012-10-30), para fines de cálculo, la función NO TOMA EN CUENTA LOS DÍAS, sólo el año y el mes... el resultado entonces son 25 meses... con este dato, lo único que tendrías que hacer es obtener la DIVISION ENTERA y el RESIDUO, de dividir entre 12... de tal manera que el resultado sea:

Código:
2 AÑOS, 1 MES
no te compliques la vida y haz uso de las funciones que ya tiene MySQL para este propósito:

http://dev.mysql.com/doc/refman/5.0/...functions.html

Haz la prueba y nos comentos.

Saludos
Leo.