Einträge in zwei Tabellen vergleichen

skysurfer102

Neuer Benutzer
Beiträge
2
Hallo

ich bin neu hier im Forum und hoffe mir kann jemand helfen.

Ich muss in der Tabelle 1 schauen ob die Werte gleich der Tabelle 2 sind.

Tabelle 1
Zeile1 , A01 , 50 , 100
Zeile2 , A01 , 60 , 100
Zeile3 , D01 , 100 , 200
Zeile4 , D01 , 110 , 200

Tabelle 2 (Einstellung)
A01 , 50 , 100
D01 , 100 , 200

Ich brauche nun eine Abfrage / Prozedur die mir aus der Tabelle 1 die Zeile2 und Zeile4 ausspuckt da die Werte nicht gleich der Tabelle 2 sind.

Bekomme ich das mit einem SQL hin oder benötige ich dafür eine Prozedur ?

Ich bin noch nicht so bewandert in Sachen SQL. Fange gerade erst damit an.

Vielen Dank im vorraus an alle die mir versuchen zu helfen.

Gruss
skysurfer102
 
Werbung:
Hi
Schreib das nächste mal noch die spaltennamen auf dann ist es einfacher. Ansonsten suchst du denk ich was in die richtung, wobei z1 z2... einfach die spaltennamen sind.

Code:
Select * from tabelle1 as t1
Join tabelle2 as t2 on t1.z1=t2.z1 and t1.z3=t2.z2 and t1.z4=t2.z3
Where isnull(t2.z1)

Jetzt wo ich es geschrieben habe kommt es mir garnicht mehr so elegant vor. Evtl hat da jemand aus dem forum noch nen eleganteren vorschlag
 
Du suchst EXCEPT.

Code:
test=*# select * from s1;
 id
----
  1
  2
  3
  4
  5
(5 Zeilen)

test=*# select * from s2;
 id
----
  3
  4
  5
  6
  7
(5 Zeilen)

test=*# select * from s1 except select * from s2;
 id
----
  1
  2
(2 Zeilen)

test=*#

Guten Rutsch!
 
Werbung:
Hallo NeoPrince und akretschmer

Vielen Dank für die superschnelle Hilfe. Ich glaube beide Varianten funktionieren. Ich habe mal wieder viel zu kompliziert gedacht.

Werde ich direkt Montag testen.

Gruss
skysurfer102
 
Zurück
Oben