SQL с левым внешним объединением и 3 таблицами - PullRequest
1 голос
/ 19 декабря 2011

Я хотел бы добавить ADD в конце моего кода.Пожалуйста, посмотрите на мой код и спасибо за вашу поддержку:

SELECT Area.org, 
   Supervisors.NomSup, 
   Supervisors.PrenomSup, 
   Employees.NomEmp, 
   Employees.PrenomEmp, 
   Employees.NoIdAlcanEmp, 
   Competencies.CodeCompetencies, 
   Competencies.CompetencyName, 
   LinkResultComp.AssNote, 
   LinkResultComp.AssDate
FROM ((((((
       Area INNER JOIN Supervisors ON Area.IdArea = Supervisors.IdArea
      )
      INNER JOIN Employees ON Supervisors.IdSupervisor = Employees.IdSupervisor
     )
     INNER JOIN LinkProfilesEmployees ON Employees.IdEmp = LinkProfilesEmployees.IdEmp
    )
    INNER JOIN Profiles ON Profiles.IdProfiles = LinkProfilesEmployees.IdProfiles
   )
   INNER JOIN LinkProfComp ON Profiles.IdProfiles = LinkProfComp.IdProfiles
  )
  INNER JOIN Competencies ON Competencies.IdCompetencies = LinkProfComp.IdCompetencies
 )
 LEFT OUTER JOIN LinkResultComp ON (Competencies.IdCompetencies = LinkResultComp.IdCompetencies AND ON Competencies.IdCompetencies = LinkResultComp.IdCompetencies)

WHERE Area.org LIKE "*20*" AND Competencies.CodeCompetencies LIKE "khse2010-05"
ORDER BY Supervisors.NomSup, Employees.NomEmp;

1 Ответ

2 голосов
/ 19 декабря 2011

Просто удалите лишние ON, которые вы добавили

Так что измените это

LEFT OUTER JOIN LinkResultComp 
ON (Competencies.IdCompetencies = LinkResultComp.IdCompetencies 
  AND ON Competencies.IdCompetencies = LinkResultComp.IdCompetencies)
------^^ This one

на это

LEFT OUTER JOIN LinkResultComp 
ON (Competencies.IdCompetencies = LinkResultComp.IdCompetencies 
  AND Competencies.IdCompetencies = LinkResultComp.IdCompetencies)

Конечно, я предполагаю, что вы имели в виду разные полядля второго условия

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...