gpt4 book ai didi

mysql - 在不指定值的情况下查找三列中重复的行?

转载 作者:行者123 更新时间:2023-11-29 12:50:54 24 4
gpt4 key购买 nike

我有一个像这样的表,我在其中寻找不必要的重复行:

enter image description here

我想查找名字、姓氏和职业列相同的任何行 - 在本例中为第 1 行和第 3 行。我不想指定相同的值应该是什么,因为我不知道。

我已经尝试过 this question 的答案,但我认为这不适用于本案。

最佳答案

简单的解决方案是添加一个 HAVING 子句,其中按所有三列分组后存在重复项

SELECT 
ID, FirstName, LastName, Occupation, Age
FROM table1
GROUP BY
FirstName,
LastName,
Occupation
HAVING COUNT(*) > 1

这是一个DEMO有两个重复的行以确保其正常工作

<小时/>

编辑:

我的第一个理解是您希望在有重复行时返回一行..如果您想要一个返回所有重复行的查询..那么这里是...这将返回第 1 行和第 3 行

SELECT p1.* FROM people p
JOIN people p1
ON p1.firstname = p.firstname
AND p1.lastname = p.lastname
AND p1.occupation = p.occupation
GROUP BY id
HAVING COUNT(*) > 1;

另一个DEMO

关于mysql - 在不指定值的情况下查找三列中重复的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24738346/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com