Php PostgreSQL重复行

Php PostgreSQL重复行,php,postgresql,Php,Postgresql,我正在使用php从表中检索PostgreSQL数据,数据不能重复,我已经有了一种不重复行获取数据的方法 SELECT DISTINCT realpath FROM paths WHERE fn='$fn' 我需要的是一种知道哪些是重复的行的方法 with a as ( SELECT count(1),realpath FROM paths WHERE fn='$fn' GROUP BY realpath ) select realpath from a where count

我正在使用php从表中检索PostgreSQL数据,数据不能重复,我已经有了一种不重复行获取数据的方法

SELECT DISTINCT realpath FROM paths WHERE fn='$fn'
我需要的是一种知道哪些是重复的行的方法

with a as (
  SELECT count(1),realpath 
  FROM paths WHERE fn='$fn'
  GROUP BY realpath 
)
select realpath 
from a
where count > 1
updtae 正如Abelisto所建议的,我试图用CTE更清楚地说明这一点的尝试可能会失败,因此缩短和更好的方法是:

  SELECT count(1),realpath 
  FROM paths WHERE fn='$fn'
  GROUP BY realpath 
  HAVING count(1) > 1

为什么不直接使用计数(*)大于1的
?不知道。我只是觉得这会更清楚。当然,有是更短的。。。我可能会编辑两者,你是对的