ROW_NUMBER 重复值重新启动
ROW_NUMBER restart on duplicate value
我有一个如下所示的结果集,我正在使用 ROW_NUMBER() 函数来确定值何时发生变化。
Date | Value | RowNumber
2/13/17 | 10 | 1
2/13/17 | 10 | 2
2/13/17 | 10 | 3
2/13/17 | 11 | 1
2/13/17 | 11 | 2
2/13/17 | 10 | 4
2/13/17 | 10 | 5
但是,这是我的问题。
最后 2 行的值再次为 10,收到 4 和 5 的 ROW_NUMBER,从前一个 10 的 ROW_NUMBER 停止的地方继续。
出于我的目的,我需要第二组 10 来重新启动 ROW_NUMBER 和 1 和 2。
我怎样才能实现这个目标?
尝试使用 LAG() 检测更改之前行的更改,并且仅检测 select 更改。
我有一个如下所示的结果集,我正在使用 ROW_NUMBER() 函数来确定值何时发生变化。
Date | Value | RowNumber 2/13/17 | 10 | 1 2/13/17 | 10 | 2 2/13/17 | 10 | 3 2/13/17 | 11 | 1 2/13/17 | 11 | 2 2/13/17 | 10 | 4 2/13/17 | 10 | 5
但是,这是我的问题。
最后 2 行的值再次为 10,收到 4 和 5 的 ROW_NUMBER,从前一个 10 的 ROW_NUMBER 停止的地方继续。
出于我的目的,我需要第二组 10 来重新启动 ROW_NUMBER 和 1 和 2。
我怎样才能实现这个目标?
尝试使用 LAG() 检测更改之前行的更改,并且仅检测 select 更改。