Hallo Leute!
Ich habe 2 Tabellen die ich miteinander verbinden will aber irgendwie klappt das bei mir nicht weil ich keinen primary key habe, sondern 2 spalten die man kombinieren muss . hier ein beispiel zur verdeutlichung:
Tabelle 1:
soll mit folgender Tabelle 2 verbunden werden:
Die Spalte "Tage" umschreibt Datum_B: Datum_A+Tage=Datum_B.
Das Ergebnis würde dann so aussehen:
ich habs zuerst einmal mit dem folgenden befehl probiert:
MS SQL gibt zwar an dass die tabellen erfolgreich gebunden worden sind, aber in Spalte Referate steht überall "NULL".
daher hab ich angenommen dass vielleicht der join befehl mit 2 keys nicht funktioniert und habe folgenden code geschrieben:
hier kommt ebenfalls das gleiche resultat raus.
und als letztes hab ich auch noch versucht die beiden keys zu vereinen:
wieder das gleicher ergbenis. d.h. es wird zwar gejoint aber irgendwie sind immer die werte aus der Tabelle 2 "NULL"
Danke für jede Hilfe!
Ich habe 2 Tabellen die ich miteinander verbinden will aber irgendwie klappt das bei mir nicht weil ich keinen primary key habe, sondern 2 spalten die man kombinieren muss . hier ein beispiel zur verdeutlichung:
Tabelle 1:
HTML Code:
Datum_A Datum_B Alter Name 01.01.2000 02.01.2013 23 Hans 01.01.1999 02.01.2011 42 Franz 02.03.2004 02.01.2013 12 Wolfgang 01.01.2000 01.01.2001 32 Herbert 01.04.2002 02.03.2004 12 Lisa 01.01.2000 02.01.2013 11 Maria
Code:
Datum_A Tage Referat 01.01.2000 4750 A 01.01.1999 4384 B 02.03.2004 3228 C 01.01.2000 366 D 01.04.2002 701 E
Das Ergebnis würde dann so aussehen:
Code:
Datum_A Datum_B Alter Name Referat 01.01.2000 02.01.2013 23 Hans A 01.01.1999 02.01.2011 42 Franz B 02.03.2004 02.01.2013 12 Wolfgang C 01.01.2000 01.01.2001 32 Herbert D 01.04.2002 02.03.2004 12 Lisa E 01.01.2000 02.01.2013 11 Maria A
Code:
select d1.datum_a,d1.datum_b, d2.Referat from tabelle_1 d1 join tabelle_2 d2 on d1.datum_a=d2.datum_a AND dateadd(days,d2.Tage,d2.datum_a)=d1.datum_a
daher hab ich angenommen dass vielleicht der join befehl mit 2 keys nicht funktioniert und habe folgenden code geschrieben:
Code:
select d1.datum_a,d1.datum_b, d2.Referat from tabelle_1 d1,tabelle_2 d2 WHERE d1.datum_a=d2.datum_a AND dateadd(days,d2.Tage,d2.datum_a)=d1.datum_a
und als letztes hab ich auch noch versucht die beiden keys zu vereinen:
Code:
select d1.datum_a,d1.datum_b, d2.Referat from tabelle_1 d1 join tabelle_2 d2 on cast(d1.datum_a as char)+cast(d2.datum_a as char)=cast(d2.datum_a as char)+cast(dateadd(days,d2.Tage,d2.datum_a) as char)
Danke für jede Hilfe!
Comment