是的,这很简单:
SELECt id, part, value, row_number() OVER (PARTITION BY grp ORDER BY id) - 1 AS numberFROM (SELECt id, part, value, sum(part) OVER (ORDER BY id) AS grp FROM mytable ) AS q; id | part | value | number ----+------+-------+-------- 1 | 0 | 8 | 0 2 | 0 | 3 | 1 3 | 0 | 4 | 2 4 | 1 | 6 | 0 5 | 0 | 13 | 1 6 | 0 | 4 | 2 7 | 1 | 2 | 0 8 | 0 | 11 | 1 9 | 0 | 15 | 2 10 | 0 | 3 | 3 11 | 0 | 2 | 4(11 rows)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)