找出連續行的最小值和最大值
您有一個資料集,其中的行代表活動,按名稱分組並按行號排序。目標是找到每個活動組中連續行的開始時間和結束時間的最小值和最大值。
使用行號差異的解決方案:
一種方法是使用行號之間的差異來識別相同的連續行活動:
with cte as ( select *, row_number() over (partition by name order by rn) as seqnum_n, row_number() over (partition by name, act order by rn) as seqnum_na from input ) select name, act, min(startt), max(endd) from cte group by seqnum_n - seqnum_na, name, act;
說明:
透過新增兩個附加資料列建立一個名為cte 的公用表表達式 (CTE):
以上是如何找出活動組內連續行的最小和最大開始時間和結束時間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!