【发布时间】:2021-01-22 14:58:56
【问题描述】:
我正在努力解决一个我认为很简单的“差距和孤岛”问题。
转这个结果集:
7:18 WORK
7:19 WORK
7:20 WORK
7:29 BREAK
7:30 BREAK
7:31 WORK
7:32 WORK
7:33 IDLE
7:34 IDLE
7:35 IDLE
7:36 IDLE
到这里:
from_timestamp until_timestamp status records_in_island
7:18 7:24 WORK 6
7:29 7:32 BREAK 3
7:31 7:32 WORK 2
7:33 7:36 IDLE 4
或者基本上是展示:
- 每个岛屿的开始和结束的时间戳
- 每个岛的记录数
这是一个包含数据的 dbfiddle: https://dbfiddle.uk/?rdbms=mysql_5.7&fiddle=a15cc8325ef4bc743df3208f8f328b9a
我在找到的间隙和孤岛解决方案中找不到任何解决方案。我使用的是 MySQL 5.7(由于 AWS Aurora 限制),所以不能使用 WITH 或其他 MySQL 8.0 语法。
任何帮助将不胜感激。
【问题讨论】:
-
为什么期望输出中第二行的第一列是 7:27,不应该是 7:29 吗?
-
谢谢 Harsh - 你是 100% 正确的 - 我在创建 dbfiddle 时注意到了这个错误。感谢您的关注。
标签: mysql sql gaps-and-islands