King^Lully: 2 Fremdschlüssel auf dieselbe Tabelle

Beitrag lesen

ich hab folgendes Problem:
Ein User kann 2 Arbeitsplätzen (arbeit_int, arbeit_ext)zugeordnet sein, und ich möchte in einem Statement die User-Id und beide Arbeitsplätze-Namen selektieren:

User

id
Name
arbeit_int
arbeit_ext

Arbeitsplatz

id
Name

Wir sollten da erst einmal das Datendesign betrachten. Wir haben bisher die Entitäten "Benutzer" und "Arbeitsplätze".

Jetzt besteht zwischen den Entitäten welche Beziehung? Ein Benutzer kann zwei Arbeitsplätze haben. Das hört sich schon besser (einfacher) an als "Ein User kann 2 Arbeitsplätzen zugeordnet sein.".

Hast Du schon mal bspw. sowas probiert:

  
SELECT  
 User.id,  
 User.Name,  
 Arbeitsplatz1.Name,  
 Arbeitsplatz2.Name  
FROM  
 User  
JOIN  
 Arbeitsplatz ON (Arbeitsplatz.id = User.arbeit_int) AS Arbeitsplatz1  
JOIN  
 Arbeitsplatz ON (Arbeitsplatz.id = User.arbeit_ext) AS Arbeitsplatz2  
ORDER BY  
 User.id ASC