当前位置: 首页 > 面试题库 >

在SQL中通过日期和时间执行聚合

顾正初
2023-03-14
问题内容

我有一个数据集,其中包含对频率为2分钟的几周的观察。我想将时间间隔从2分钟增加到5分钟。问题在于,观察的频率并不总是相同的。我的意思是,从理论上讲,每10分钟应进行5次观察,但通常情况并非如此。请让我知道如何根据平均功能以及观察的时间和日期汇总观察。换句话说,基于每5分钟的汇总,而对于每5分钟的时间间隔,观察次数却不同。此外,我有时间戳格式的日期和时间。

示例数据:

1 2007-09-14 22:56:12 5.39
2 2007-09-14 22:58:12 5.34
3 2007-09-14 23:00:12 5.16
4 2007-09-14 23:02:12 5.54
5 2007-09-14 23:04:12 5.30
6 2007-09-14 23:06:12 5.20

预期成绩:

1 2007-09-14 23:00 5.29
2 2007-09-14 23:05 5.34

问题答案:

本质上,将avg聚合与以下项一起使用:

GROUP BY floor(extract(epoch from the_timestamp) / 60 / 5)


 类似资料:
  • 问题内容: 我需要在T-SQL中将值转换为。该值采用格式,例如 我需要在T-SQL中进行转换。 我试过了 但这会引发错误。 “将nvarchar数据类型转换为datetime数据类型导致超出范围的值。” 任何的想法 谢谢 问题答案: 将格式重建为。

  • 问题内容: 我在用SQL Server填充同一项目的日期和时间时遇到麻烦。以下是三个简单的记录。 我希望我的结果在1行中,并且在Date_Time列中填入一个逗号,然后是逗号。 有人能帮我指出正确的方向/链接或简单的查询来解决问题吗? 谢谢,XH。 问题答案: 如果您使用的是SQL Server 2017或更高版本,则可以使用string_agg如下所示: 如果它在sql server 2017以

  • 问题内容: 我正在寻找如何在HQL查询中执行日期/时间数学。具体来说,如何从函数结果中增加或减少(x)时间?还是我必须为此使用SQL并希望正在运行的任何数据库都支持它? HQL查询示例: 我可以将:timeToSubtract参数定义为任何特定单位,尽管大于小时的值是不希望的,而秒数则是最理想的。 澄清:我意识到这可以在查询之外轻松完成。但是出于哲学原因,可以说使用数据库服务器的时间而不是查询系统

  • 问题内容: 我正在尝试将表中的数字键转换为日期时间键。我当前的查询是: 日期列显示:2013-06-22 13:36:44.403 我想将其分为两列:日期:2013-06-22 时间(删除微秒):13:36:44 任何人都可以修改我现有的查询以显示所需的输出吗?这将不胜感激。请注意:我正在使用SQL Server Management Studio 2008。 问题答案: 您可能要研究conver

  • 问题内容: 我有一张关于不同资产的开/关事件的表格。我需要在不使用游标的情况下获取开始和停止事件时间的列表。 来源: 所需结果: 问题答案: 这是解决方案,带有概念验证供所有人验证。 我注意到的事件被标记为新事件。我解决了这个问题,但是这也导致我编写了一个解决方案,该解决方案允许发生一个已经开始但尚未结束的事件,因此我加入了一个开放式事件。 另外,我的解决方案在重叠的时期内有效。 讲解 我们将数据

  • 问题内容: 将记录插入数据库时​​,我无法将C#日期时间 7/31/2017 3:13:49 PM转换 为SQL日期时间。 我正在使用 但这给了我错误。 无法将字符串识别为有效的DateTime。 问题答案: .Net 直接映射到SQL Server 。这意味着您完全不需要担心显示格式,因为它没有显示格式。 您需要做的就是将struct的实例 作为参数 传递给: