Ver Mensaje Individual
  #6 (permalink)  
Antiguo 01/12/2010, 08:10
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Duda con auto_increment y campo calculado

Ya te puse el link de las funciones de fecha y hora (12.5. Funciones de fecha y hora). En ese capítulo del manual tienes todas las funciones de fecha y hora necesarias para hacer cualquier cosa.
El el caso, por ejemplo, de querer obtener una fecha basado en otra previa, pero sumando una cantidad fija de tiempo (años, meses, dias, horas, minutos o segundos), simplemente usas la función correspondiente a la suma:
Código MySQL:
Ver original
  1.     id,
  2.     nombre,
  3.     apellido,
  4.     fechainscripcion,
  5.     ADDDATE(fechainscripcion, INTERVAL 4 MONTH) fechabaja
  6. FROM tabla;
Esta consulta, por ejemplo, devuelve una fecha de baja sumando 4 meses a la fecha del campo fechainscripcion.

Código MySQL:
Ver original
  1.     id,
  2.     nombre,
  3.     apellido,
  4.     fechainscripcion,
  5.     ADDDATE(fechainscripcion, INTERVAL 4 MONTH) fechabaja
  6. FROM tabla
  7. WHERE CURDATE() < =  ADDDATE(fechainscripcion, INTERVAL 4 MONTH) ;
Esta consulta devuelve todos los registros cuya fecha de inscripcion sea de los últimos 4 meses, incluyendo el día de hoy.


¿Se entiende la idea?

El tema es que debes crear las tablas de modo que los datos te provean flexibilidad de consultas, y no generar datos que requieran un constante UPDATE... que no cumple funciones prácticas. Además, si ese dato fuese parte de un índice la cosa se vuelve peor.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)