记录MSSQL精准去除重复记录的技巧(mssql 去重复)

2023-04-21 21:40:24 记录 重复 精准

MSSQL中,当我们需要去除重复记录时,利用内置函数可以精准搞定任务。本文将分享几种去除重复记录的技巧。

#### 1.使用DISTINCT函数

DISTINCT函数用于从结果集中去除重复的行。语法如下:

SELECT DISTINCT 列名 FROM 表名; 

例如:

SELECT DISTINCT  empname FROM emp;

使用DISTINCT函数能够轻松去除重复记录,但如果在记录中不止只有一列被重复,当其他列也有重复时使用DISTINCT函数会出现错误。

#### 2.使用GROUP BY 子句

当不止一列被重复时,需要使用GROUP BY 子句来处理。GROUP BY 子句可以将表中的数据按某一列(或多个列)分组,从而去除重复记录。语法如下:

SELECT聚集函数(列名),列名 FROM 表名 GROUP BY 列名;

例如:

SELECT COUNT(empname), empname FROM emp GROUP BY empname; 

上述语句可以实现以下去除重复的功能:将雇员的姓名固定,然后统计出每个姓名的雇员人数。

#### 3.使用UNION语句

UNION语句实现SQL查询的合并,当两个查询的结果有重复记录时,去除某一行的记录,用UNION ALL语句可以精准去除重复行记录。语法如下:

SELECT 列名 FROM 表名
UNION ALL
SELECT 列名 FROM 表名;

例如:

SELECT empname FROM emp
UNION ALL
SELECT empname FROM salary;

#### 总结

MSSQL提供了多种方法去除重复记录:使用DISTINCT函数,使用GROUP BY 子句和使用UNION语句。使用不同方法处理任务时,根据自身需要选择最合适的方法即可。

相关文章