比较两列并回显重复项

时间:2016-11-16 18:36:09

标签: postgresql psql

我有一个包含两列的80.000条记录的数据库: uuid sign_in_ip 。有时,当用户拥有多个帐户时,他们只有一个sign_in_ip,但有一个以上的UUID。有没有办法轻松选择那些记录?

1 个答案:

答案 0 :(得分:0)

我想,这可以通过内部查询来完成,如下所示:

SELECT * 
FROM yourtablename 
WHERE sign_in_ip IN (
        SELECT sign_in_ip 
          FROM yourtablename 
          GROUP BY sign_in_ip 
          HAVING COUNT(DISTINCT uuid) > 1
); 

在这里,您选择带有sing_in_ip的所有记录,这些记录多出一次。并且发现这不是唯一的sign_in_ip' s是使用的内部查询。