Eu tenho uma tabela assim no MS SQL SERVER 2014:
ID|Race|Lap
1 |21 |11
2 |21 |NULL
3 |21 |NULL
4 |21 |NULL
5 |29 |65
6 |29 |NULL
7 |29 |NULL
8 |29 |NULL
Estou tentando preencher a coluna Lap adicionando 1 a ela com base no primeiro valor. A partição é baseada na coluna Race. Algo assim seria o resultado final:
ID|Race|Lap
1 |21 |11
2 |21 |12
3 |21 |13
4 |21 |14
5 |29 |65
6 |29 |66
7 |29 |67
8 |29 |68
Pode haver outras maneiras de fazer isso, mas prefiro ficar com o CTE recursivo. Há alguma maneira de fazer isso?
Isso produziria o resultado esperado:
também outra maneira usando funções de janela:
Para este tipo de casos, o CTE recursivo pode ser usado como abaixo, sem a necessidade de particionar.