The outcome column of ROWNUMBER()OVER(ORDER BY FOO) can be used as a grouping column in an aggregate function. For example, if we need to calculate the average value of a certain column grouped by the rank (ROWNUMBER) of another column, we could do:
SELECT ROWNUMBER() OVER(ORDER BY column1) as rank, AVG(column2) as avgvalue FROM table1 GROUP BY ROW_NUMBER() OVER(ORDER BY column1)
This query will calculate the average value of column2 for each rank (ROW_NUMBER) of column1.
Asked: 2022-04-15 11:00:00 +0000
Seen: 3 times
Last updated: Apr 10 '22