我非常感谢帮助您获得正确的输出,我想了解它的工作原理并自学。
我有一张桌子:
我想通过一个查询获得以下结果:
user_name | task | CountOftask | SumOftime
U1 1 1 00:15
U2 1 1 00:25
U2 2 1 00:05
U3 2 1 00:20
U3 3 2 00:40
时间字段是日期/时间hh:nn。 在此阶段,日期字段与查询无关-我希望返回所有历史数据。
我想使用一个带有子选择的查询而不是两个单独的查询来查看任务计数,时间总和以及按用户名和任务分组。
感谢您的时间
我可以创建此输出,但是我使用两个查询(Q1)将时间转换为整数并求和。 (Q2)使用Q1将整数转换回时间hh:mm。
SELECT
user_name
, task
, Count(task) AS CountOftask
, Sum(CLng(24*60*CDate([time]))) AS time_mins
FROM tasks
GROUP BY user_name, task;
SELECT
[301 SF count of task].user_name
, [301 SF count of task].task
, [301 SF count of task].CountOftask
, [time_mins]\60 & Format([time_mins] Mod 60,"\:00") AS Time_sum
FROM [301 SF count of task]
;
我希望能够在一个查询中做到这一点,任何建议都值得赞赏。
答案 0 :(得分:0)
尝试:
Select
user_name,
Max(task) As max_task,
Count(*) As task_count,
CDate(Sum([time])) As total_time
From
YourTable
Group By
user_name,
task
编辑-如果时间是文本:
Sum(CDate([time])) As total_time
或强制日期值:
CDate(Sum(CDate([time]))) As total_time