2017-01-20 12 views
1

Ich habe Tabelle wie:PostgreSQL finden doppeltes Feld

ID PERSON UPDATE 
1 132 1.1.2015 
1 132 2.1.2015 
3 152 4.5.2013 
9 152 1.2.2013 

Ich brauche Personen zu zählen, die unterschiedlichen IDs haben, die größer ist als 1.

+1

Was sind die Ergebnisse, die Sie erhalten möchten? Was hast du probiert? –

+0

Ergebnis der oberen Tabelle: 152 2 – Gogoo

+0

Hätte diese Tabelle eine Zeile '9 152 1.2.2014', wäre das Ergebnis immer noch 2 oder wäre es 3? – jpmc26

Antwort

1

I denke, du willst das:

select person, count(distinct id) 
from t 
group by person 
having count(distinct id) > 1; 
+0

Muss "ID = 1" herausfiltern. – jpmc26

+0

@ jpmc26. . . Obwohl das OP vielleicht nicht sofort offensichtlich ist, versucht es zu sagen "Ich muss Personen zählen, die unterschiedliche IDs haben". –

0
select person, count(*) from table 
where id>1 
group by person 

oder

select person, count(*) from table 
where id<>1 
group by person