Entfernen Sie Zeilen, auf die KEIN Fremdschlüssel verweist

Dies ist etwas verwandt mitdiese Frage:

Ich habe eine Tabelle mit einem Primärschlüssel und ich habe mehrere Tabellen, die auf diesen Primärschlüssel verweisen (mit Fremdschlüsseln). Ich muss Zeilen aus dieser Tabelle entfernen, in denen der Primärschlüssel in keiner dieser anderen Tabellen referenziert wird (sowie in einigen anderen Einschränkungen).

Zum Beispiel:

Group
groupid | groupname
    1   |    'group 1'
    2   |    'group 3'
    3   |    'group 2'
    ... |    '...'

Table1
tableid | groupid | data
    1   |    3    |    ...
    ... |    ...  |    ...

Table2
tableid | groupid | data
    1   |    2    |    ...
    ... |    ...  |    ...

und so weiter. Einige der Zeilen in Group werden in keiner der Tabellen referenziert, und ich muss diese Zeilen entfernen. Außerdem muss ich wissen, wie man alle Tabellen / Zeilen findet, die auf eine bestimmte Zeile in Group verweisen.

Ich weiß, dass ich einfach jede Tabelle abfragen und die Gruppen-IDs überprüfen kann, aber da es sich um Fremdschlüssel handelt, stelle ich mir vor, dass es eine bessere Möglichkeit gibt, dies zu tun.

Dies ist übrigens Postgresql 8.3.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage