sql – 如何在表中查找重复的名称

前端之家收集整理的这篇文章主要介绍了sql – 如何在表中查找重复的名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一张桌子,上面有人名地址和职称.
名字有时会重复.我必须比较两个人是否有相同的名字和相同的地址,而不是只保留1个记录.
Table: Data_Excel
Name: P_Name
Address: P_Address
City:  P_city

解决方法

要查找重复项,您可以执行以下操作:
SELECT P_name,P_Address,P_city
FROM Data_Excel
GROUP BY P_Name,P_city
HAVING COUNT(*) > 1;

删除重复项,您可以执行以下操作:

DELETE
FROM Data_Excel
WHERE rowid NOT IN (
    SELECT MIN(rowid)
    FROM Data_Excel
    GROUP BY P_Name,P_city
    );

要插入人员表,您将执行以下操作:

INSERT INTO Person(id,name)
SELECT (SELECT MAX(id)+1 FROM Person),P_Name 
FROM Data_Excel WHERE P_Name NOT IN (SELECT name FROM Person)

猜你在找的MsSQL相关文章