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

sumar horas en campo date

Estas en el tema de sumar horas en campo date en el foro de Mysql en Foros del Web. esta es mi consulta : <?php $consulta = "SELECT * FROM TAviso a INNER JOIN (TAvisoSeleccion b, TAvisoOcurrencia c,TAvisoCiudad d) ON (a.IdAlerta = b.IdAlerta AND ...
  #1 (permalink)  
Antiguo 16/02/2006, 10:01
 
Fecha de Ingreso: febrero-2004
Mensajes: 65
Antigüedad: 20 años, 1 mes
Puntos: 0
sumar horas en campo date

esta es mi consulta :


<?php

$consulta = "SELECT * FROM
TAviso a INNER JOIN (TAvisoSeleccion b, TAvisoOcurrencia c,TAvisoCiudad d)
ON (a.IdAlerta = b.IdAlerta AND a.IdOcurrencia=c.IdOcurrencia AND d.IdCiudadAlerta = b.IdCiudadAlerta)
WHERE DATE_SUB(CURTIME(), INTERVAL 3 HOUR) <= a.Hora ";

?>

necesito que tome el valor del campo hora,
si pasaron 3 horas, no lo muestre


de esta manera no me funciona, no me tira error la consulta, pero me
trae 0 registros.

donde esta el error??
  #2 (permalink)  
Antiguo 16/02/2006, 10:40
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
Porque no intentas esto:

Código PHP:
<?php

$consulta 
"SELECT * FROM
TAviso a INNER JOIN (TAvisoSeleccion b, TAvisoOcurrencia c,TAvisoCiudad d)
ON (a.IdAlerta = b.IdAlerta AND a.IdOcurrencia=c.IdOcurrencia AND d.IdCiudadAlerta = b.IdCiudadAlerta)
WHERE TIME(DATE_SUB(NOW(), INTERVAL 3 HOUR)) <= a.Hora "
;

?>
cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #3 (permalink)  
Antiguo 16/02/2006, 10:56
 
Fecha de Ingreso: febrero-2004
Mensajes: 65
Antigüedad: 20 años, 1 mes
Puntos: 0
sumar horas en campo date

no funciona... no logro entender la funcion.

me la podrias explicar?

yo genero un registro con hora 13:00...quiero que a la hora 16:00 no lo muestre mas
  #4 (permalink)  
Antiguo 16/02/2006, 11:04
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
Por alguna razon en mi version de mysql no funciona bien la funcion CURTIME() cuando la uso con DATE_SUB() por eso use NOW(), ahora te explico la condicion:
NOW te devuelve el dia y la hora actual de tu server , con interval y date_sub le quito 3 horas y con la funcion TIME() que engloba todo esto te devuelve solo la hora, en este caso la hora disminuida en tres horas:
TIME(DATE_SUB(NOW(), INTERVAL 3 HOUR)) <= a.Hora
otra cosa Hora supongo que es de tipo TIME, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #5 (permalink)  
Antiguo 17/02/2006, 06:54
 
Fecha de Ingreso: febrero-2004
Mensajes: 65
Antigüedad: 20 años, 1 mes
Puntos: 0
sumar horas en campo date

perfecto, muchisimas gracias..... lo unico que modifique fue que mi servidor esta adelantado 2 horas.. por lo tanto en interval puse 5 hour.

gracias.....
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 18:13.