Разница между оконными и обычными агрегатными функциями в PostgreSQL заключается в том, что при использовании оконных функций несколько строк не группируются в одну, а продолжают существовать отдельно. 2 В отличие от агрегатных функций, оконные возвращают единственное значение для каждой строки рассматриваемого запроса. 3
Агрегатные функции работают с набором значений и возвращают единственное скалярное значение. 3 Они используются с предложением GROUP BY, которое вычисляет агрегатное значение для нескольких групп в одном запросе. 3 В результирующем наборе отдельные строки свёрнуты в единственную строку, представляющую агрегатные значения для каждой группы. 3
Таким образом, основное отличие в том, что оконные функции позволяют работать с агрегатными и неагрегатными значениями одновременно, поскольку строки не сворачиваются, а результаты работы оконных функций просто добавляются к результирующей выборке как ещё одно поле. 3