【发布时间】:2018-12-19 15:20:45
【问题描述】:
我有一张像下面这样的表格。
ID Time State
1 1 "active"
1 2 "active"
1 3 "active"
1 4 "inactive"
2 2 "inactive"
2 3 "active"
3 1 "active"
3 3 "active"
3 4 "inactive"
我想按状态对带有开始/结束时间的表格进行排序。
它可能需要lag() 窗口函数,但我不知道如何找到相同状态的端点。
我预期的表格应该是这样的。
ID Start End State
1 1 4 "active"
1 4 NULL "inactive"
2 2 3 "inactive"
2 3 NULL "active"
3 1 4 "active"
3 4 NULL "inactive"
【问题讨论】:
-
在您的预期输出中,您写了 Start = 1, End = 4 表示状态不活动。您是说 Start = 4 吗?
-
嗨,S-Man,感谢您指出这一点。我纠正了它:)
标签: postgresql