【问题标题】:SQL sum up multiple measured data over an hour by hour in ACCESSSQL在ACCESS中逐小时汇总多个测量数据
【发布时间】:2022-01-01 02:44:33
【问题描述】:

我有大量的数据在一年内测量,每小时多次,我想将这些数据按一个小时相加,然后对所有列求和。我在ACCESSS中做,我只是不知道如何使脚本在这个愚蠢的软件中工作。我已经工作了几个小时了,如果没有适当的调试,这就像大海捞针,如果某些脚本在 sql 中正常工作,它就不会在 Access 中,而且我找到的每个教程或文档每次都会引导我如何计算时差。所以如果有人知道如何做到这一点,我将非常感激。

表格是这样的

Time                 Column1       Column2
12.12.2014 5:20      0             0
12.12.2014 5:30      15            5
12.12.2014 5:45      50            12
12.12.2014 5:55      120           8
12.12.2014 6:25      300           25
12.12.2014 6:40      240           50

我希望它看起来像这样

Date         Hour          SUM(Column1)       SUM(Column2)       Summary
12.12.2014   6             185                25                 210
12.12.2014   7             540                75                 615

尝试通过 DatePart 进行,但总是失败。

【问题讨论】:

标签: sql ms-access


【解决方案1】:

您不需要脚本,只需要这样的查询(空中代码):

Select
    DateValue([Time]) As [Date],
    Hour(-Int(-TimeValue([Time]) * 24) / 24) As [Hour],
    Sum([Column1]) As Total1,
    Sum([Column2]) As Total2,
    Sum([Column1]) + Sum([Column2]) As Summary
From
    YourTable
Group By
    DateValue([Time]),
    Hour(-Int(-TimeValue([Time]) * 24) / 24)

【讨论】:

  • 不错的解决方案,但我的问题是 Date/Time DataType 中的解决方案中的时间?如果它是你使用的格式,因为我使用 dd\.mm\.yyyy\ h:nn 并且它只是说无效的数据类型
  • 数据类型 Date 没有格式。您看到的只是应用于这些值的默认日期/时间格式。 无效的数据类型表示您的字段不是数据类型日期,或者某些记录具有必须过滤掉或替换的Null值具有默认值。如果字段的数据类型为Text,则必须进行转换。检查一下。
猜你喜欢
  • 2011-02-05
  • 2011-10-05
  • 2011-07-09
  • 1970-01-01
  • 1970-01-01
  • 2016-08-31
  • 2021-12-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多