Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/03/2013, 03:49
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: Interval de 30 segundos

12.000 son alrededor de 8 días y 8 horas. Eso por lo pronto. Para qué alguien quiere calcular eso, es para mí un misterio, sin mirar todo el sistema.
En cuanto a una función que te devuelva una diferencia de 30 segundos, es de lo más simple, cuando lees con cuidado y atención el manual de referencia: Usa TIMESTAMPDIFF().
DATE_ADD, por más que tolere usar DATETIMEs, es una función que apunta a fechas, no fechas y horas. Al operar con fracciones de dias genera conversiones implícitas de fecha a fecha y hora, pero eso puede tener resultados inesperados cuando no se tiene cuidado respecto a los parámetros usados.

La idea es, usando lo que dices:
Código MySQL:
Ver original
  1. SELECT a, b, c, ...
  2. FROM tabla
  3. fecha > DATE_SUB(NOW(), INTERVAL 30 SECOND);
O bien:
Código MySQL:
Ver original
  1. SELECT a, b, c, ...
  2. FROM tabla
  3. TIMESTAMPDIFF(SECOND, NOW(), fecha) > 30;


En todo caso, sería mejor que postearas el código de la función que te causa problemas. Es más sencillo darte consejos con cosas reales.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 19/03/2013 a las 04:26