SQL SEVER如何把用rank()查询到的那列的值更新到表中某一列
2个回答
展开全部
你说的这个问题和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
)
所以你可以用临时表先查出(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
)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询