我有一个表,其中包含股票1分钟时间间隔的数据。
我需要将数据转换为5分钟、15分钟、30分钟、1小时的时间间隔并对列进行分组。
我不知道如何转换时间间隔。任何人都可以帮助我吗?
文件内容
日期 | 打开 |
---|---|
2024年9月27日14:30:00 | 354.7 |
27-09-2024 14:31:00 | 354.75 |
27-09-2024 14:32:00 | 355.35 |
27-09-2024 14:33:00 | 355.2 |
27-09-2024 14:34:00 | 354.95 |
27-09-2024 14:35:00 | 354.4 |
27-09-2024 14:36:00 | 354.7 |
2024年9月27日14:37:00 | 354.5 |
2024年9月27日14:38:00 | 354.25 |
2024年9月27日14:39:00 | 354.15 |
2024年9月27日14:40:00 | 354.4 |
预期输出为:
每隔5分钟应显示第5分钟的频率数据 例如:
日期 | 打开 |
---|---|
2024年9月27日14:30:00 | 354.7 |
27-09-2024 14:35:00 | 354.4 |
2024年9月27日14:40:00 | 354.4 |
15分钟、30分钟的数据也一样,应该显示第15分钟、30分钟的数据。
基于您的示例输出。看起来您想要过滤日期的分钟部分是整 5 分钟的行。
类似的东西
Select * from records
where
MOD(extract(minute from date),5) = 0
这获取日期的分钟部分,通过模运算运行它,并且仅显示分钟部分是 5 的某个倍数的条目。您可以将其扩展到其他间隔。