3.1k Aufrufe
in Anwendungen(Java,C++...) von
Ich habe folgendes Problem:

Es gibt 2 Tabellen, in beiden Tabellen gibt es jeweils 2 gleiche Spalten. Ich will nun die Datensätze aus beiden Tabellen vergleichen und wenn in der ersten Tabelle ein Datensatz eingetragen ist, er aber nicht in der zweiten Tabelle existiert, dass er ihn mir Anzeigt.

Beispiel:

Tabelle 1
Spalte 1 Spalte 2
aaaaa 1234
bbbbb 9876

Tabelle 2
Spalte 1 Spalte 2
aaaaa 1234
bbbbb 9876
babab 0000
aaaaa 0000
aaaaa 9876

Wenn überhaupt kein Eintrag vorhanden ist zu Spalte1 oder 2, hier mit dem "babab" und "0000", bekomme ich angezeigt. Auch wenn zwar "aaaaa" in der oberen Tabelle vorhanden ist, aber die "0000" nicht. Mein Problem besteht da drin, dass bei dem Beispiel hier, zwar "aaaaa" und "9876" in der oberen Tabelle vorkommen, aber nicht in der Kombination zusammen. Das bekomme ich leider nicht gefiltert

Am Ende müssten mir dann also die Datensätze
babab 0000
aaaaa 0000
aaaaa 9876

angezeigt werden, doch der "aaaaa" mit "9876" fehlt mir immer.

Ich hoffe, dass mir wer weiterhelfen kann

5 Antworten

0 Punkte
von son_quatsch Experte (5.3k Punkte)
Unter Oracle ein Kinderspiel - unter MySQL etwas schwerer. Von welchem DBMS sprechen wir?
0 Punkte
von
Ich benutze DB2
0 Punkte
von
hmm, merke gerade als Gast kann man nicht editieren :(

Version 8.1.5
0 Punkte
von son_quatsch Experte (5.3k Punkte)
Damit kenne ich mich überhaupt nicht aus. Eventuell
select b.spalte1, b.spalte2 from tabelle2 b where not exists (select 'x' from tabelle1 a where a.spalte1= b.spalte1 and a.spalte2= b.spalte2);
0 Punkte
von
Ich danke dir für die schnelle Hilfe!!!

Es klappt

In dem Sinne ein schönes Wochende

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...