У меня возникла проблема с получением этих данных sql, чтобы вернуть то, что я хочу: Я хочу, чтобы он возвращал список свойств как сотрудника, так и Job_Profile. Если один из них не обладают свойством она должна возвращать NULL в этой строке/столбце Теперь SQL выглядит следующим образом:SQL JOIN и WHERE statement
SELECT Parameter.Patameter_Description ParamName,
Job_Profile.Title, Job_Property.Mark JobMark,
Emp_Property.Mark EmpMark,
Emp_Id--, (Employee.First_Name + ' ' + Employee.Last_Name) EmpName
FROM Job_Property
INNER JOIN Job_Profile ON Job_Profile.Title = Job_Property.Job_Title
INNER JOIN Parameter ON Job_Property.Parameter_Id = Parameter.Id
RIGHT JOIN Emp_Property ON Emp_Property.Parameter_Id = Job_Property.Parameter_Id
INNER JOIN Employee ON Emp_Property.Emp_Id = Employee.Enterprise_Staff_Id
WHERE Employee.Enterprise_Staff_Id = 22
AND Job_Profile.Title =
(SELECT
Employee.Job_Profile_Name
FROM Employee WHERE Employee.Enterprise_Staff_Id = 22)
Результат:
Analyse test 1 3 22
И я хотел бы, чтобы это было что-то вроде этого:
Analyse test 1 3 22
Data test 3 NULL NULL or 22
economic test 4 NULL NULL or 22
Service test 2 NULL NULL or 22
Я знаю, что есть проблема, когда я: - присоединиться к Emp_Property - Сделать WHERE заявление
Я попытался это и Б LEFT OUTER JOIN вместо RIGHT JOIN и результат я получаю из такого же одно и то же. Я также попытался сделать все соединения FULL OUTER и запустить его без предложения where, и я все еще не получаю значения NULL, которые я ожидаю – Jorn