![]() |
Datenbank: MySQL • Version: Fümpf • Zugriff über: php
SQL-JOIN: DS oder NULL
Hallo,
ich suche mal wieder nach nem SQL-Statement: Tabelle A: Arbeitgeber(id,name) Tabelle B: Arbeitnehmer(id,name,typ) Tabelle C: Arbeitsvertraege(id,ag,an,anfang,ende) Wenn ein AN noch beim AG arbeitet, steht bei Ende "0" drin, ansonsten der Zeitpunkt wo er aufgehört hat. Bei AN steht bei typ eine Zahl zwischen 1 und 6. Ein AG hat immer nur einen AN vom selben Typ gleichzeitig. Nun brauche ich ein SQL-Statement, welches mir alle AG zurückliefert. Zusätzlich möchte ich über einen Join zu jedem AG den AN mit typ 4. Wenn ein AG keinen AN vom typ 4 hat, soll NULL drinstehn. Ich hab einiges versucht, aber ich bekomm höchstens die Einträge der AG die einen entsprechenden AN haben, aber die die keinen AN haben bekomm ich nciht. :angel: |
Re: SQL-JOIN: DS oder NULL
IIF(), CASE ... WHEN, NULLIF()
|
Re: SQL-JOIN: DS oder NULL
Zeig mal Deine Abfrage, ich denke, Du hast einen INNER JOIN gemacht, brauchst aber einen OUTER JOIN.
|
Re: SQL-JOIN: DS oder NULL
meine abfrage sah so aus:
SQL-Code:
Ich probier mal noch bissl rum
select * from AG left outer join AV on AV.ag=AG.id left outer join AN on AN.id=AV.an where AV.typ=4 and AV.ende=0
|
Re: SQL-JOIN: DS oder NULL
SQL-Code:
Bin mir selber aber gerade nicht sicher.
select * from AG
left outer join AV on AV.ag=AG.id left outer join AN on AN.id=AV.an and AV.typ=4 and AV.ende=0 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz