Löschen nach Tabellenvergleich
Löschen nach Tabellenvergleich
am 04.11.2006 11:00:35 von Stephan Dreisbach
Hallo,
mit
SELECT * from Schuelerstatistik st LEFT JOIN Schueler ss ON
st.Schuelernr=ss.nr where ss.nr IS NULL
bekomme ich alle Datensätze der Tab Schuelerstatistik, die es nicht
mehr in Schueler gibt. Aber wie bekomme ich die gelöscht? Ich sehe da
vermutlich vor lauter Bäumen den Wald nicht mehr.
Stephan
Re: Löschennach Tabellenvergleich
am 04.11.2006 11:42:16 von Andreas Kretschmer
Andreas
--
q: why do so many people take an instant dislike to mysql?
a: it saves time (oicu in #postgresql)
Explaining the concept of referential integrity to a mysql user is like
explaining condoms to a catholic (Shadda in #postgresql)
Re: Löschen nach Tabellenvergleich
am 04.11.2006 17:23:38 von Claus Reibenstein
Stephan Dreisbach schrieb:
> mit
> SELECT * from Schuelerstatistik st LEFT JOIN Schueler ss ON
> st.Schuelernr=ss.nr where ss.nr IS NULL
SELECT * sollte man möglichst nie verwenden. Sollte sich einmal Deine
Tabellenstruktur ändern, könntest Du an solchen Stellen schnell auf die
Nase fallen.
> bekomme ich alle Datensätze der Tab Schuelerstatistik, die es nicht
> mehr in Schueler gibt. Aber wie bekomme ich die gelöscht?
DELETE FROM Schuelerstatistik
WHERE Schuelernr NOT IN (SELECT nr FROM Schueler)
Gruß. Claus
Re: Löschen nach Tabellenvergleich
am 04.11.2006 19:22:23 von Stephan Dreisbach
Andreas Kretschmer schrieb:
>
>delete from schuelerstatistik where schuelernr not in (select nr from schueler);
>
Danke
Re: Löschen nach Tabellenvergleich
am 05.11.2006 13:20:11 von Oliver Dietz
Hallo,
> mit
> SELECT * from Schuelerstatistik st LEFT JOIN Schueler ss ON
> st.Schuelernr=ss.nr where ss.nr IS NULL
>
> bekomme ich alle Datensätze der Tab Schuelerstatistik, die es nicht
> mehr in Schueler gibt. Aber wie bekomme ich die gelöscht? Ich sehe da
> vermutlich vor lauter Bäumen den Wald nicht mehr.
DELETE st FROM Schuelerstatistik st LEFT JOIN Schueler ss ON
st.Schuelernr=ss.nr WHERE ss.nr IS NULL
Schöne Grüße,
Oliver