ORDER BY ROW_NUMBER
UPD: obrigado por tudo, tópico fechado, depois de dormir eu entendo tudo =)
Tenho um problema ao entender a cláusula OVER e a função ROW_NUMBER. Tabela simples - nome e marca. Quero calcular a nota média para cada nome.
SELECT top 1 with ties name, ROW_NUMBER() over (PARTITION BY name ORDER BY name) as number
FROM table
ORDER BY AVG(mark) OVER(PARTITION BY name)
exibirá algo assim, e eu entendo o porquê - é isso que ROW_NUMBER () faz
name|number
Pete 1
Pete 2
Mas se eu escrever
SELECT top 1 with ties name, ROW_NUMBER() over (PARTITION BY name ORDER BY name) as number
FROM table
ORDER BY AVG(mark) OVER(PARTITION BY name), number
exibirá
name|number
Pete 1
E desta vez não entendo como o ORDER BY funciona com a função ROW_NUMBER (). Alguém pode me explicar isso?