MudGuard: SQL - Join und SubSelect

Beitrag lesen

Hi,

User

UserId, Username, ...

Tasks

TaskId, TaskName, LanguageId, ...

Languages

LanguageId, Language, ...

und zwei Verknüfungstabellen:

UserLanguages

UserId, LanguageId, ...

UserTasks

UserId, TaskId, Status

SELECT UserLanguages.UserId, Languages.Language, Tasks.TaskId
FROM UserLanguages 
  Left Join Tasks on UserLanguages.LanguageId=Tasks.LanguageId 
  Left join  Languages on Tasks.LanguageId=Languages.LanguageId 
  left join [hier muss die Tabelle UserTasks hinein] 
where UserLanguages.UserId=VARIABLE  

Hm. Ausgehend von den UserLanguages gibt es mehrere Wege zu den Usertasks.

UserLanguages.userId -> UserTasks.userId

UserLanguages.taskId -> Tasks.taskId -> Usertasks.taskId

Welcher Weg davon der Richtige ist, kannst nur Du beurteilen.

Einen Subselect sehe ich hier nicht. LEFT JOIN scheint mir ausreichend.

Aber wie gesagt, wirklich beurteilen kannst das nur Du - Deine Beschreibung ist mir zu wirr ...

cu,
Andreas a/k/a MudGuard