【发布时间】:2022-11-25 05:02:22
【问题描述】:
我有一个包含这种结构和数据的表
| Id | Data | Date | Time |
|---|---|---|---|
| 1 | sample1 | 2022-11-10 | 21:10:00 |
| 2 | sample2 | 2022-11-10 | 23:50:00 |
| 3 | sample3 | 2022-11-11 | 01:20:00 |
| 4 | sample4 | 2022-11-11 | 05:30:00 |
| 5 | sample5 | 2022-11-11 | 20:59:00 |
| 6 | sample6 | 2022-11-11 | 23:01:00 |
| 7 | sample7 | 2022-11-12 | 01:01:00 |
| 8 | sample8 | 2022-11-12 | 04:01:00 |
............................................................ 等等
我想要这样的结构
| date | Start Date | End Date |
|---|---|---|
| 2022-11-11 | 21:10:00 | 05:30:00 |
| 2022-11-12 | 20:59:00 | 04:01:00 |
时间不固定,很难弄清楚。一种逻辑是晚上7点到早上8点之后获取数据但不确定。任何建议将不胜感激
【问题讨论】:
-
抱歉,但我不清楚为什么第 4 行和第 5 行之间应该有一个中断。找到一个描述您需要的算法,您就已经完成了一半的解决方案。
-
@LaurenzAlbe,我相信这是标题中早晚之间的休息时间。所以
05:30:00是当天早上的最后一个条目,20:59:00是晚上的第一个条目。话虽这么说,但尚不清楚标记早上和晚上休息时间的实际值是多少。 -
@LaurenzAlbe,不会有任何逻辑,所以在某些情况下,可能有 2 行数据,有时可能有 10 行。这就是为什么我想要晚上 7 点之后的第一个数据作为开始时间,并且可能是早上 8 点之前的最后一个数据作为结束时间
标签: sql postgresql