presto 支持row_number() over partition by
时间: 2023-06-23 13:45:05 浏览: 308
row_number,根据多个字段过滤,partition by
是的,Presto支持`row_number() over partition by`语法。`row_number()`函数用于计算每行在其分区内的序号,`partition by`子句用于将数据集分成不同的分区(类似于GROUP BY子句),以便在每个分区内计算序号。例如,以下查询返回每个部门中工资最高的员工及其排名:
```
SELECT department, name, salary,
row_number() over (partition by department order by salary desc) as rank
FROM employee;
```
这个查询将employee表按照department字段分区,然后按照salary字段降序排序,计算每个分区内的员工排名。结果集中包含每个员工的部门、姓名、工资和排名。
阅读全文