需要使用谷歌表中的查询来找到持续时间

时间:2019-11-11 08:00:33

标签: google-sheets

在Google表格中有rfid出勤数据,该数据有出入时间。需要知道某天某员工工作了多少小时。使用了查询语句,并能够提取给定日期的最小和最大。需要找出持续时间HH:MM起作用

https://docs.google.com/spreadsheets/d/1AbcTQ8CdmPO7KjtMFPWc1QK7rVnf1q0K51U_WAMKlqw/edit?usp=sharing

附上Google工作表,看看G1中的查询代码是否需要在K列中找到持续时间

QUERY(A:D,"Select A,B, Max(C), Min (C),Max(C)- Min (C) Group by A,B Label A 'Key',B 'Date',Max(C) 'Maximum', Min (C) 'Minimum', Max(C)- Min (C) `Duration`",0)

那么如何在Googlesheet的查询语句中找到小时之间的差异

1 个答案:

答案 0 :(得分:1)

在您的查询公式中,表格会显示一条错误消息,该错误消息似乎与标签有关,因此请删除标签子句

Label A 'Key',B 'Date',Max(C) 'Maximum', Min (C) 'Minimum', Max(C)- Min (C) `Duration`

现在,在删除label子句之后,Sheets会提供另一个错误,指出

  

无法对非   数字。

因此,问题在于您无法从Min(C)中减去Max(C),因为C中的值是时间,而不是数字。

我认为没有任何一种好的方法可以在您的QUERY()公式内修复此 ,但是我们可以修复电子表格中的数据以使其起作用。在E列中,使用=VALUE()将C列中的时间转换为数字。例如,E2将为=VALUE(C2)

现在,我们只需要在查询中使用这些新值(而不是Max(C)-Min(C),而使用Max(E)-Min(E))并包含format clause

=QUERY(A:E,"Select A,B, Max(C), Min(C), Max(E)-Min(E) Group by A,B Label A 'Key',B 'Date',Max(C) 'Maximum', Min(C) 'Minimum', Max(E)-Min(E) 'Duration' Format Max(E)-Min(E) 'HH:mm'",0)