如何使用标记字段总结凯尔在此表上的天数?
| 行|姓名|旗|天数|
| --------------|--------------|--------------|--------------|
| 1|凯尔|0|十二岁|
| 二|凯尔|0| 02|
| 三|凯尔|1| 01|
| 四个|凯尔|1|十八岁|
| 五|凯尔|1| 01|
| 六|凯尔|0| 01|
| 七|凯尔|1| 01|
| 八|凯尔|1| 01|
我想要这个结果:
| 行|姓名|旗|天数|
| --------------|--------------|--------------|--------------|
| 1|凯尔|0|十二岁|
| 二|凯尔|0| 02|
| 三|凯尔|1|二十|
| 六|凯尔|0| 01|
| 七|凯尔|1| 02|
2条答案
按热度按时间des4xlb01#
这看起来像是一个缺口和孤岛问题。如果我正确地遵循了这一点,我们可以通过行号之间的差异来识别“相邻”行,然后聚合启用了标志的岛:
Demo on DB Fiddle(感谢nbk创建用例)。
7jmck4yq2#
你可以使用窗口函数
首先,我们需要一个分组依据的组,这两个CTE都将提供
fiddle