Window Function no PostgreSQL
A construir porque é um tópico complexo.
É possível fazer WINDOW FUNCTION de alguma forma alternativa (antes do padrão SQL 2012)?
É possível sim!
Um exemplo neste tutorial:
https://dzone.com/articles/window-function
... é um exemplo simples, usando OVER(), ou seja, não usa partições nem order by.
Referências
Ótimo tutorial de introdução do PostgreSQL Tutorial
http://www.postgresqltutorial.com/postgresql-window-function/
Duas explicações da suprema Lisa Smith
https://www.compose.com/articles/metrics-maven-window-functions-in-postgresql/
https://compose.com/articles/metrics-maven-window-frames-in-postgresql/
Explicação muito boa do Michal Konarski
https://mjk.space/advances-sql-window-frames/
Ótimo tutorial sobre Window Function do Tihomir Babic
https://learnsql.com/blog/range-clause/
Explicando as funções ROW_NUMBER, RANK, DENSE_RANK em Window Functions
https://www.datasciencemadesimple.com/row_number-rank-and-dense_rank-within-group-in-postgresql/
Explicando WINDOW FUNCTIONs aninhadas (WTF????)
https://data-xtractor.com/blog/query-builder/shared-inline-aggregates-with-window-functions-for-mysql/
Documentações oficiais do PostgreSQL
Documentação sobre SELECT (veja a parte de Window Functions)
https://www.postgresql.org/docs/current/sql-select.html
Expressões da WINDOW FUNCTION
https://www.postgresql.org/docs/current/sql-expressions.html#SYNTAX-WINDOW-FUNCTIONS
Funções possíveis de Window Function
https://www.postgresql.org/docs/current/functions-window.html
Documentação sobre WINDOW FUNCTION (meio ruim de entender)
https://www.postgresql.org/docs/current/tutorial-window.html
Sobre EXCLUDE
https://modern-sql.com/caniuse/over_exclude