Estimados, encontre la siguiente funcion de SQL Server que me permite obtener la diferencia entre 2 fechas y el resultado me lo arroja segun lo que necesite: año, meses, dias, horas, minutos o segundos
Como yo necesito saber los segundos que transcurren entre el primer ingreso al Estadio y el Ultimo, y luego sacar cada cuantos segundos me ingresaba una persona, me sirvio...
Aqui las sentencias
Código SQL
[-]
declare @FechaIngreso datetime
declare @FechaEgreso datetime
select @FechaIngreso = '19981231 15:15:15'
select @FechaEgreso = '20021005 10:10:01'
Select
DATEDIFF(yy, @FechaIngreso, @FechaEgreso) AS Años,
DATEDIFF(mm, @FechaIngreso, @FechaEgreso) AS Meses,
DATEDIFF(dd, @FechaIngreso, @FechaEgreso) AS Dias,
DATEDIFF(mi, @FechaIngreso, @FechaEgreso) AS Minutos,
DATEDIFF(ss, @FechaIngreso, @FechaEgreso) AS Segundos
y para mis consultas, las cree de la siguiente manera
Código SQL
[-]
Select Ctl_Id as Puerta,
Count(Eve_Id) as Ingresos,
Min(Convert(Varchar(8),Ing_Fecha, 108)) as Primer_Ingreso,
Max(Convert(Varchar(8),Ing_Fecha, 108)) as Ultimo_Ingreso,
Convert(Varchar(8),(Max(Ing_Fecha)-Min(Ing_Fecha)),108) as Rango_Tiempo,
DateDiff(s, Min(Ing_Fecha), Max(Ing_Fecha)) as Segundos,
DateDiff(s, Min(Ing_Fecha), Max(Ing_Fecha))/Count(Eve_id) as Ingreso_Cada_XSeg
From
Vista_Ingreso
Where Eve_Id=8
Group By Ctl_Id
bueno, la consulta anterior me arroja los siguientes resultados
Cita:
3 532 19:40:45 21:16:45 01:36:00 5760 10
1 272 19:40:22 21:00:17 01:19:55 4795 17
5 144 19:46:38 21:04:53 01:18:15 4695 32
|
la linea 1 me dice lo siguiente:
Puerta de Ingreso : 3
Personas que Ingresaron por esa puerta : 532
Primer Ingreso : 19:40:45
Ultimo Ingreso : 21:16:45
Rango de Tiempo : 01:36:00 (1 hora y 36 minutos)
Rango en Segundos : 5760
Ingreso 1 persona cada :10 segundos
bueno, espero que les sirva esto a alguien.. ahh.. pero lo que no encontre es como transformar un dato de tipo datetime a segundos... pero igual seguire buscando
salu2

