SQL 怎么用指定条件查询RANK函数生成的新排名列?
2 回答
慕标5832272
TA贡献1966条经验 获得超4个赞
需要再套一层子查询, 计算字段直接使用不太方便
select *
from (SELECT xingming,fenshu,RANK() OVER(ORDER BY fenshu DESC) as paiming from test
) t
where paiming >1 and paiming <4
慕运维8079593
TA贡献1876条经验 获得超5个赞
你说的这个问题和rank没有关系,你只是想把查出来的一列数据根据条件再update到表中某一列。 所以你可以用临时表先查出(key, value)这样的组合,然后在通过key相等这样的条件来update你表中对应行的某列的value。 With T { Select a.key_no as key, RANK() over(partition by a.key_no order by a.id) as value, From A a } update A set a.Some_Column = ( select t.value from T t where t.key = A.key_no )
- 2 回答
- 0 关注
- 1858 浏览
添加回答
举报
0/150
提交
取消