SQL - Outer Join
Geizhals » Forum » Programmierung » SQL - Outer Join (3 Beiträge, 120 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
SQL - Outer Join
03.04.2006, 11:02:21
Hi!

Hat wer eine Idee zum unteren SQL STMT (MS SQL Server 2000 Std.) Eigentlich sollte ich alle Fahrzeuge (genau 1 mal) aus der Tabelle Fuhrpark zurückgeben bekommen. (egal ob dazu Mitarbeiter vorhanden sind oder nicht).

Kurz zur Erklärung:
tbl_fuhrpark -> Alle Fahrzeuge
tbl_mitarbeiter -> Alle Mitarbeiter
tbl_fp_change_mitarbeiter -> Mitarbeiter ID, Fuhrpark ID und datum_von und datum _bis

Somit ist es mir möglich die Mitarbeiter und Fuhrpark (mit Zeitspanne) zu verknüpfen. Nur fehlen mir Autos wenn kein Mitarbeiter dazu eingetragen ist.

Danke

Undying


SELECT DISTINCT
                      TOP 100 PERCENT dbo.tbl_fuhrpark.ID, dbo.tbl_fuhrpark.str_kennzeichen, dbo.tbl_fuhrpark.str_marke, dbo.tbl_fuhrpark.str_typ,
                      dbo.tbl_unternehmen.str_bezeichnung AS str_unternehmen, dbo.tbl_maingroup.str_bezeichnung AS str_hauptgruppe, dbo.tbl_fuhrpark.int_active,
                      dbo.tbl_gruppe.str_bezeichnung AS str_gruppe, dbo.tbl_mitarbeiter.str_matchcode AS str_mitarbeiter
FROM         dbo.tbl_gruppe RIGHT OUTER JOIN
                      dbo.tbl_mitarbeiter RIGHT OUTER JOIN
                      dbo.tbl_fp_change_mitarbeiter ON dbo.tbl_mitarbeiter.ID = dbo.tbl_fp_change_mitarbeiter.int_mitarbeiter_ID ON
                      dbo.tbl_gruppe.ID = dbo.tbl_fp_change_mitarbeiter.int_gruppe_ID RIGHT OUTER JOIN
                      dbo.tbl_unternehmen RIGHT OUTER JOIN
                      dbo.tbl_maingroup RIGHT OUTER JOIN
                      dbo.tbl_fuhrpark ON dbo.tbl_maingroup.ID = dbo.tbl_fuhrpark.int_maingroup_ID ON dbo.tbl_unternehmen.ID = dbo.tbl_fuhrpark.int_unternehmen_ID ON
                      dbo.tbl_fp_change_mitarbeiter.int_fuhrpark_ID = dbo.tbl_fuhrpark.ID
WHERE     (dbo.tbl_fp_change_mitarbeiter.date_bis IS NULL)

Antworten PM Übersicht Chronologisch
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung