首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SQL中使用ROW_NUMBER()更新列

如何在SQL中使用ROW_NUMBER()更新列
EN

Stack Overflow用户
提问于 2015-01-08 08:47:47
回答 1查看 16.6K关注 0票数 1

我在桌子上增加了一个新的栏。现在,我想用函数row_number().And中的值更新这个列,因为我想删除重复条目。下面提到的代码没有提供所需的输出。

代码语言:javascript
复制
UPDATE tab1
SET rownumber = (SELECT ROW_NUMBER() OVER(ORDER BY name ASC) 
             FROM tab1 AS a WHERE a.name = b.name)
FROM tab1 b

问题是,当在表中添加新列时,其值为null。Insert into添加表中的新行,但不替换nulls。如何用函数ROW_NUMBER()生成的行号更新空值。

下面提到的表格是我所拥有的

名称评分

美国银行10

商业银行20

富国银行135

中西部银行45

美国银行10

商业银行20

现在,我想要输出,就像删除副本之后一样。

名称评分

美国银行10

商业银行20

富国银行135

中西部银行45

我试图添加一个具有唯一值的新列,以获得所需的结果。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-08 08:57:09

试试这个:

代码语言:javascript
复制
UPDATE T
SET T.rownumber = TT.ROW_ID
FROM tab1 AS T
INNER JOIN (SELECT ROW_NUMBER() OVER (ORDER BY name) AS ROW_ID
                  ,name
            FROM Tab1) AS TT
    ON T.name = TT.name
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27836071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档