Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

calcular meses entre dos fechas con diferentes años

Estas en el tema de calcular meses entre dos fechas con diferentes años en el foro de Mysql en Foros del Web. Hola gente !! Tengo un problemita con una consulta mysql Quisiera sacar la diferencia en meses entre dos fecha en donde los años son distintos. ...
  #1 (permalink)  
Antiguo 29/01/2010, 15:58
 
Fecha de Ingreso: mayo-2008
Mensajes: 224
Antigüedad: 11 años, 6 meses
Puntos: 4
calcular meses entre dos fechas con diferentes años

Hola gente !!

Tengo un problemita con una consulta mysql

Quisiera sacar la diferencia en meses entre dos fecha en donde los años son distintos.
Por ej. 2009-03-01 y 2010-05-01

Realize una consulta con le mismo año y funciona usando el MONTH, pero cuando las variables cambian de año ya me saca cualquier numero.

Yo quisiera por ejemplo sacar la diferencia entre 2009-12-01 y la fecha actual que seria CURDATE() pero ni ahi

Me saca cualquier cosa o numeros negativos.

el datediff saca dias y yo necesito meses.

Por favor si tienen alguna idea tirenme un cablecito, ya probe con todo como pa no joder a la primera pero no hay caso, no le encuentro la vuelta.

GRACIAS !!!!
  #2 (permalink)  
Antiguo 29/01/2010, 16:08
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 10 años, 9 meses
Puntos: 360
Respuesta: calcular meses entre dos fechas con diferentes años

Con timestampdiff lo puedes conseguir.

Código MySQL:
Ver original
  1. mysql> select timestampdiff(month,'2009-12-01',curdate());
  2. +---------------------------------------------+
  3. | timestampdiff(month,'2009-12-01',curdate()) |
  4. +---------------------------------------------+
  5. |                                           1 |
  6. +---------------------------------------------+
  7. 1 row in set (0.00 sec)
  8.  
  9. mysql> select timestampdiff(month,'2009-08-04',curdate());
  10. +---------------------------------------------+
  11. | timestampdiff(month,'2009-08-04',curdate()) |
  12. +---------------------------------------------+
  13. |                                           5 |
  14. +---------------------------------------------+
  15. 1 row in set (0.00 sec)
  16.  
  17. mysql>

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 29/01/2010, 16:22
 
Fecha de Ingreso: mayo-2008
Mensajes: 224
Antigüedad: 11 años, 6 meses
Puntos: 4
Respuesta: calcular meses entre dos fechas con diferentes años

Hola huesos

me agarro de los pelos.

Probe lo que me enviastes y me saltaba error. Chusmee sobre el times.... que me pasastes, resulta que funciona a partir del mysql 5 y yo tengo el mysql 4.1.22-standard

No quiere. Tenes alguna otra idea?
  #4 (permalink)  
Antiguo 30/01/2010, 09:06
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 10 años, 9 meses
Puntos: 360
Respuesta: calcular meses entre dos fechas con diferentes años

Mira esta función
http://forge.mysql.com/tools/tool.php?id=40

PD: Esa versión de mysql es muy vieja. Te recomiendo migres tus bases a la ultima versión de mysql. Estas perdiendo funcionalidad.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 31/01/2010, 20:09
 
Fecha de Ingreso: mayo-2008
Mensajes: 224
Antigüedad: 11 años, 6 meses
Puntos: 4
Respuesta: calcular meses entre dos fechas con diferentes años

Gracias Huesos. Me funciono.

Lo pongo aca

http://www.udias.com:8080/foro/index...m=1&topic=1483

Es lo mismo que me pasastes en el link anterior pero esta esplicado en castellano.

GENIOOO!!!!!!!!!!!! gracias !!!

Etiquetas: diferentes, dos, fechas, meses, calculadora
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:10.