row_number聚合函数having
时间: 2023-10-07 10:13:46 浏览: 259
SQL学习笔记四 聚合函数、排序方法
row_number 是一种窗口函数,而不是聚合函数。它用于为查询结果集中的每一行分配一个唯一的连续编号,根据指定的排序规则进行排序。
在使用 row_number 函数时,通常会结合使用 OVER 子句来定义分析窗口。例如,以下是一个示例查询:
SELECT col1, col2, row_number() OVER (ORDER BY col1) AS row_num
FROM table_name
HAVING row_num > 5;
在这个例子中,row_number 函数根据 col1 列的值对结果集进行排序,并为每一行分配一个连续编号。然后,HAVING 子句用于筛选出 row_num 大于 5 的行。
需要注意的是,HAVING 子句是用于筛选聚合结果的条件表达式,而不是用于筛选窗口函数结果的。如果你想对 row_number 进行筛选,可以使用子查询或者将结果放入临时表中进行进一步处理。
阅读全文