sql server 去重
时间: 2023-08-19 15:17:58 浏览: 103
SQLSERVER去重语句.docx
5星 · 资源好评率100%
在SQL Server中,可以使用DISTINCT关键字来实现去重。DISTINCT关键字作用于查询结果集中的所有字段,去除重复的行。例如,使用以下语句可以在用户表中去除重复的记录:
SELECT DISTINCT id, name, age, height
FROM userinfo;
然而,如果想要只根据某些字段进行去重,可以使用ROW_NUMBER()函数结合PARTITION BY子句来实现。ROW_NUMBER()函数为每一行分配一个唯一的数字,并且PARTITION BY子句用于指定分组的字段。以下是一个示例:
SELECT id, name, age, height
FROM (
SELECT id, name, age, height, ROW_NUMBER() OVER (PARTITION BY id, name ORDER BY id) AS rn
FROM userinfo
) AS t
WHERE rn = 1;
在上述示例中,根据id和name字段进行分组,并按照id字段进行排序。然后,选择每个分组中的第一条记录,实现了根据id和name字段进行去重的效果。
阅读全文