Hallo zusammen
Ich sehe gerade den Wald vor Bäumen nicht. Ich habe eine Tabelle aus einem zusammen gesetzten Key (Tabelle2)
Tabelle 1: [PK = ID]
ID (int)
Beschreibung (text)
Tabelle 2: [PK = ID, NR]
ID -> Verweis auf ‘ID’ von Tabelle 1
Nr (Text)
Beschreibung
Geometry
Beispieldatensätze
1|2015,‘234-34’,’…’,‘geom’
2|2015,‘567-35’,’…’,‘geom’
3|2015,‘888-36’,’…’,‘geom’
4|2016,‘234-34’,’…’,‘geom’
5|2016,‘567-35’,’…’,‘geom’
Die Nummern ‘234-34’ und ‘567-35’ sind in beiden Zeiträumen (2015 und 2016) vorhanden. Ich will nun eine Abfrage haben welche mir ersten anzeigt welche Nummern nur in einem Zeitraum vorhanden sind und / oder welche Nummern fehlen.
Kann mir da jemand einen Tipp geben?
Gruß Thomas
ich bin mir nicht sicher, dich korrekt zu verstehen. vereinfacht hast du:
test=# select * from t2;
id | nr | t
----+------+------
1 | 2015 | bla
2 | 2015 | blub
3 | 2015 | foo
4 | 2016 | bla
5 | 2016 | blub
(5 rows)
und suchst wohl:
test=# select t, count(1) from t2 group by t having count(1) = 1;
t | count
-----+-------
foo | 1
(1 row)
paßt das so?
Nein die 1,2,3,4,5 waren bloß Nummerierung
ID | NR | Beschreibung | Geometrie |
-----+--------+--------------+-----------+
2015 | 234-34 | ..... | ......... |
2015 | 567-35 | ..... | ......... |
2015 | 888-36 | ..... | ..........|
2016 | 234-34 | ..... | ......... |
2016 | 567-35 | ..... | ......... |
so wäre die Tabelle ID + NR ergeben PK
ja. Ändert aber am Problem und auch an der Lösung nix, oder? nr bei mir -> id bei dir, und t bei mir -> nr bei dir.
Guten Morgen
Danke das ist es! ![:slight_smile: :slight_smile:](https://www.pg-forum.de/images/emoji/twitter/slight_smile.png?v=9)
SELECT nr, geometrie, count(nr) FROM tabelle2 WHERE id IN (2015,2016) GROUP BY nr, geometrie HAVING count(nr) = 1
Vielen lieben Dank.
Gruß Thomas