Einzelnen Beitrag anzeigen
Ungelesen 16.12.12, 22:37   #3
pro-logic
Anfänger
 
Registriert seit: Nov 2009
Beiträge: 39
Bedankt: 8
pro-logic ist noch neu hier! | 0 Respekt Punkte
Standard

Du hast recht, mit Join kann man schon einiges erreichen...

Code:
SELECT tblFahrzeuge.Fahrzeugkennung, tblFahrzeuge.ReserveFahrzeug, tblReserveFahrzeugAbgabe.AbgabeDatum, tblReserveFahrzeugAbgabe.Nachricht, tblReserveFahrzeugAbgabe.RueckgabeDatum
FROM tblFahrzeuge 
LEFT JOIN tblReserveFahrzeugAbgabe ON tblFahrzeuge.FahrzeugID = tblReserveFahrzeugAbgabe.FahrzeugID
WHERE tblFahrzeuge.ReserveFahrzeug=True;

Mit dieser Abfrage werden immer alle verfügbaren Fahrzeuge angezeigt und wenn existent auch der entsprechende Datensatz aus der "Leihliste". Der Datensatz aus der Leihliste soll aber nur angezeigt werden, wenn das Rückgabedatum nicht eingetragen ist (das Fahrzeug wurde verliehen und wurde noch nicht zurück gebracht)

Also z.B. so ein Ergebnis:

Code:
Fzg:          Datum:         Text:      Rückgabe
RTW 4-R   01.12.2012    an FW6       10.12.2012   <--- das soll nicht so
RTW 4-5    10.11.2012    an FW10     (noch nicht zurück)    <--- das soll so
WLF 4-1     -        <--- das soll auch so

Wenn ich aus
Code:
WHERE tblFahrzeuge.ReserveFahrzeug=True; z.B.
Code:
WHERE tblFahrzeuge.ReserveFahrzeug=True AND IsNull(tblReserveFahrzeugAbgabe.RueckgabeDatum)=True;
mache, hat das zur Folge das folgendes Ergebnis heraus kommt:

Code:
Fzg:          Datum:         Text:      Rückgabe
WLF 4-1     -
(weil dies das einiges Fahrzeug ist für das es keinen Datensatz in der zweiten Tabelle gibt, bzw. wo o.g. Bedingung zutrifft)

D.h. folgendes Ergebnis wäre mein Wunsch:
Code:
Fzg:          Datum:         Text:      Rückgabe
RTW 4-R   -  (selbe wie oben, aber da ein Rückgabedatum eingetragen ist wird nur der Fahrzeugname angezeigt)
RTW 4-5    10.11.2012    an FW10     (noch nicht zurück)
WLF 4-1     -

Wird es jetzt eindeutiger?

MfG pL
pro-logic ist offline   Mit Zitat antworten