Hi Christian
jetzt moechte ich tabelle eins so mit tabelle zwei verknuepfen, daß
jeder kunde mit seiner kundennummer und dem datum daß am naechsten vor
dem datum in tabelle eins liegt verknuepft ist.ergebnis:
kunde a 12.03.2002 10.03.2002
kunde b 14.05.2002 14.05.2002
kunde c 01.07.2002 06.05.2002select kunde_1, kunde_2, datum_1, datum_2
from tabelle_1, tabelle_2
where kunde_1 = kunde_2 and ????wie muß die where bedingung lauten?
Du brauchst mehr als nur eine where Bedingung.
Du willst pro Eintrag aus Tabelle a einen eintrag
aus Tabelle b, das hört sich nach einem Grouping an, dann
willst du eine Funktion wie min und max, das hört sich
noch viel mehr nach Grouping an, daraus folgt:
select kunde_1, datum_1, max(datum_2)
from tabelle_1, tabelle_2
where kunde_1 = kunde_2
and datum_2 <= datum_1
group by kunde_1, datum_1
Ich nehme an, du hattest die zwei kunden nur zu debug-Zwecken
drin, die müssen ja identisch sein. Das Group by macht, das du pro kunde und datum jeweils das höchste Datum kriegst, der
zweite Vergleich im Where macht, dass alle Daten, die grösser
als das passende von Tabelle 1 sind, ausgeschlossen werden.
Lies dir dazu auch mal den Tipps und Tricks zu dem Thema durch:
http://aktuell.de.selfhtml.org/tippstricks/datenbanken/having/index.htm
Gruss Daniela
Nein, wir frieren unsere Hühner nicht auf Gletschern fest.
Selfcode: sh:) fo:) ch:) rl:) br:> n4:| ie:{ mo:) va:) de:] zu:} fl:( ss:) ls:&