Consulta tiempo entre una fila y otra
Publicado por Rodrigo (6 intervenciones) el 08/04/2015 18:53:49
Hola!
Los molesto porque tengo una consulta que no puedo realizar, intente de todo pero no me sale
Tengo un log de sesiones de usuarios en mi sistema.
Quisiera sacar mediante una query sql en mi BD oracle la suma del tiempo logueado de un "usuario" por "adr" por día.
Como podría hacerlo?
Mi prueba, que no esta del todo bien ya que no determina por ejemplo la suma total de la sesion por dia ni tampoco por ejemplo si la sesión es un dia y termina el otro dia..
Select abresesion.user, abresesion.adr, logueo, deslogueo
FROM
(Select user,adr, min(fecha) logueo from Tabla where accion='Login' group by user,adr) abresesion,
(Select user,adr, min(fecha) deslogueo from Tabla where accion='Logout' group by user,adr) cierrasesion
where abresesion.user = cierrasesion.user
and abresesion.adr = cierrasesion.adr
Tengo los siguientes datos:
user adr fecha accion
HT 22 02/04/2015 23:35:36 Logout
HT 22 03/04/2015 0:22:19 Login
HT 22 03/04/2015 1:24:43 Logout
HT 22 03/04/2015 3:05:54 Login
HT 22 03/04/2015 5:53:14 Logout
JM 30 16/01/2015 8:51:32 Login
JM 30 16/01/2015 12:06:29 Logout
JM 30 17/01/2015 8:25:48 Login
JM 30 17/01/2015 11:36:04 Logout
JM 30 27/01/2015 8:21:34 Login
JM 30 27/01/2015 11:41:05 Logout
JM 30 30/01/2015 6:24:27 Login
Gracias desde ya!
Ayuda por favor :(
Saludos
Los molesto porque tengo una consulta que no puedo realizar, intente de todo pero no me sale
Tengo un log de sesiones de usuarios en mi sistema.
Quisiera sacar mediante una query sql en mi BD oracle la suma del tiempo logueado de un "usuario" por "adr" por día.
Como podría hacerlo?
Mi prueba, que no esta del todo bien ya que no determina por ejemplo la suma total de la sesion por dia ni tampoco por ejemplo si la sesión es un dia y termina el otro dia..
Select abresesion.user, abresesion.adr, logueo, deslogueo
FROM
(Select user,adr, min(fecha) logueo from Tabla where accion='Login' group by user,adr) abresesion,
(Select user,adr, min(fecha) deslogueo from Tabla where accion='Logout' group by user,adr) cierrasesion
where abresesion.user = cierrasesion.user
and abresesion.adr = cierrasesion.adr
Tengo los siguientes datos:
user adr fecha accion
HT 22 02/04/2015 23:35:36 Logout
HT 22 03/04/2015 0:22:19 Login
HT 22 03/04/2015 1:24:43 Logout
HT 22 03/04/2015 3:05:54 Login
HT 22 03/04/2015 5:53:14 Logout
JM 30 16/01/2015 8:51:32 Login
JM 30 16/01/2015 12:06:29 Logout
JM 30 17/01/2015 8:25:48 Login
JM 30 17/01/2015 11:36:04 Logout
JM 30 27/01/2015 8:21:34 Login
JM 30 27/01/2015 11:41:05 Logout
JM 30 30/01/2015 6:24:27 Login
Gracias desde ya!
Ayuda por favor :(
Saludos
Valora esta pregunta


0