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

registros en un intervalo de tiempo

Estas en el tema de registros en un intervalo de tiempo en el foro de Mysql en Foros del Web. Hola amig@s!! Estoy implementando un módulo de votación de noticias en mi aplicación web y me surge un pequeño problema a la hora de insertar ...
  #1 (permalink)  
Antiguo 07/01/2010, 03:01
Avatar de aniMAYtions  
Fecha de Ingreso: diciembre-2007
Ubicación: Granada
Mensajes: 519
Antigüedad: 16 años, 10 meses
Puntos: 2
registros en un intervalo de tiempo

Hola amig@s!!

Estoy implementando un módulo de votación de noticias en mi aplicación web y me surge un pequeño problema a la hora de insertar los votos en la bd.
Resulta que un mismo usuario no puede votar a una misma noticia hasta pasados 15 minutos de su anterior votación.
Entonces, para comprobar si ese user ha votado en un intervalo de tiempo de 15 minutos a partir de la fecha actual se me ha ocurrido la siguiente sentencia:
Código:
SELECT *
FROM `noticia_voto`
WHERE id_noticia = 'id'
AND ip_usuario = 'ip'
AND date( date_voto ) = date(
CURRENT_TIMESTAMP )
AND time( date_voto )
IN (

SELECT DATE_SUB( CURTIME( ) , INTERVAL 15 MINUTE )
)
Pero me devuelve un valor vacío cuando debería devolverme un par o 3 de filas que concuerdan.

Alguien puede decirme en qué estoy faiando??

Mil gracias
  #2 (permalink)  
Antiguo 07/01/2010, 04:57
Avatar de aniMAYtions  
Fecha de Ingreso: diciembre-2007
Ubicación: Granada
Mensajes: 519
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: registros en un intervalo de tiempo

Probando y probando al final lo he conseguido con la siguiente consulta:

Código:
SELECT * FROM noticia_voto WHERE id_noticia = '$cod_noticia' AND ip_usuario = '$cod_usuario' 
		AND date_voto BETWEEN DATE_ADD( now(), INTERVAL '-15:00' MINUTE_SECOND ) and now()
Espero que os sirva de algo. Gracias de todas formas!!

Etiquetas: intervalo, registros
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 00:57.