Im usar MS Access como mi base de datos y estoy usando siguiente consulta para obtener el tiempo trabajado:que intentó ejecutar una consulta que no incluya la expresión 'tiempo_SALIDA' especificada como una función de agregado en el acceso ms
select
in_time,
out_time,
datediff("n",b.in_time,c.out_time) as work_time,
log_date,
emp_id
from
(select
LogTime as in_time,
SrNo,
LogID as emp_id,
LogDate as log_date
from LogTemp
where Type='IN') as b
left join
(select
SrNo as out_id,
LogTime as out_time,
LogID as out_emp_id,
LogDate as out_log_date
from LogTemp
where Type = 'OUT'
group by SrNo) as c
on (b.SrNo <> c.out_id
and b.emp_id = c.out_emp_id
and b.log_date = out_log_date)
where
c.out_id > b.SrNo and
[log_date] >= #8/20/2012# and
[log_date] <= #8/20/2012# and
emp_id = "8"
group by b.SrNo;
Pero cuando yo haga la consulta Im consiguiendo el error siguiente:
"you tried to execute a query that does not include the specified expression 'out_time'
as an aggregate function in ms access" error.
Cualquier sugerencia de donde estoy en el error.
Solo se ha agrupado por 'b.SrNo'. ¿Qué 'out_time' (y' in_time', y 'log_date', ...) quieres? .... –
Por lo que veo, ¿supongo que querías ORDENAR BY b.SrNo y no GROUP BY? – Omnikrys
Muchas gracias por la respuesta, funciona mencionando los campos en el grupo pero el problema es que la salida no está comparando dos filas, está comparando todas las filas entre sí ! [Estructura de la tabla] [1] SrNo LOGID LOGDATE TIPO DE LOGTIME 1 8 8/20/2012 9:32:12 AM Mi salida debe comparar y proporcionar la diferencia de tiempos de entrada y salida de filas sucesivas. No todas las "filas de entrada y salida". Por favor encuentre la pantalla adjunta. – saranya