Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Problema para construir consulta en laravel

Estas en el tema de Problema para construir consulta en laravel en el foro de Frameworks y PHP orientado a objetos en Foros del Web. hola amigos espero me puedan ayudar , tengo la siguiente consulta la cual la tengo que integrar con laravel @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código SQL: Ver original ...
  #1 (permalink)  
Antiguo 01/08/2013, 14:07
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 13 años, 7 meses
Puntos: 6
Problema para construir consulta en laravel

hola amigos espero me puedan ayudar ,

tengo la siguiente consulta la cual la tengo que integrar con laravel
Código SQL:
Ver original
  1. SELECT COUNT(1) FROM anemometro WHERE TO_TIMESTAMP(TO_CHAR(fecha,'YYYY-MM-DD')||' '||TO_CHAR(hora,'HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') > now()-'2 hour'::INTERVAL;

hasta el momento tengo esta parte de la setencia

Código PHP:
Ver original
  1. Route::get('two', function()
  2. {
  3.  
  4.     $registrostwo = DB::table('anemometro')->count()-> where(TO_TIMESTAMP(TO_CHAR(fecha,'YYYY-MM-DD')||' '||TO_CHAR(hora,'HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') > now()-'2 hour'::interval)->get();;
  5.     return View::make('registrostwo')->with('registrostwo', $registrostwo );
  6. });

Última edición por Montes28; 01/08/2013 a las 14:15
  #2 (permalink)  
Antiguo 02/08/2013, 10:45
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: Problema para construir consulta en laravel

¿ Que quieres sacar ?

¿ El total de filas con fecha y hora menor de hace dos horas ?

¿ Todas las filas con fecha y hora menor de hace dos horas ?

¿ Las columnas "fecha" y "hora" de que tipo son ?
  #3 (permalink)  
Antiguo 02/08/2013, 11:08
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: Problema para construir consulta en laravel

]eternoaprendiz gracias por responder ,

respondo tus preguntas

quiero obtener el numero de registros y todas las filas de hace dos horas (tomando como referencia la hora actual) , se que el numero de registros lo puedo hacer por sql y por programación

las columnas son de tipo:
fecha es de tipo date
hora es de tipo time without time zone

actualmente estoy realizando la consulta asi y me funciona
Código PHP:
Ver original
  1. Route::get('two', function()
  2. {
  3. $registrostwo = DB::select("SELECT * FROM anemometro WHERE TO_TIMESTAMP(TO_CHAR(fecha,'YYYY-MM-DD')||' '||TO_CHAR(hora,'HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') > now()-'2 hour'::interval");
  4.     return View::make('registrostwo')->with('registrostwo', $registrostwo );
  5. });

es correcto hacerlo asi?
  #4 (permalink)  
Antiguo 02/08/2013, 15:29
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: Problema para construir consulta en laravel

Algo más correcto sería:

Código PHP:

$registrostwo 
DB::table('anemometro')->where("TO_TIMESTAMP(TO_CHAR(fecha,'YYYY-MM-DD')||' '||TO_CHAR(hora,'HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') > now()-'2 hour'::interval")->get(); 
Lástima que fecha y hora no estén en la misma columna ...
  #5 (permalink)  
Antiguo 02/08/2013, 15:38
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: Problema para construir consulta en laravel

También puedes probar algo así:

Código PHP:

$rows 
DB::table("anemometro")
  ->
where("TIMESTAMP(fecha, hora) > DATE_SUB(NOW(), INTERVAL 2 HOUR)")
  ->
get(); 
Es más claro y debería funcionarte ...

Etiquetas: construir, laravel
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 04:27.