私は、MS SQL で非常に単純なクエリであるべきものに頭を悩ませています。と の 2 つのテーブルがEmployees
ありDepartments
ます。
Employees
ID (pkey int)
、FName
、LName
、 ... 、の標準アイテムで構成されますDepartmentID
。
Departments
DepartmentID
、DepartmentName
、 ... 、 で構成されますManagerID
。
からEmployees.DepartmentID
へDepartments.DepartmentID
の関係、および と の間の関係がDepartments.ManagerID
ありEmployees.EmployeeID
ます。
つまり、各従業員には部門があり、各部門には従業員でもあるマネージャーがいます。
従業員名、...、部門、部門長を表示するビューを作成しようとしています。
このコードを使用すると、複数の値が返されるというエラーが発生し続けます。
SELECT
Employees_1.EmployeeID, Employees_1.FirstName, Employees_1.LastName,
Departments_1.DepartmentName,
(SELECT
dbo.Employees.LastName
FROM dbo.Employees
INNER JOIN dbo.Departments
ON dbo.Departments.DepartmentManager = dbo.Employees.EmployeeID
) AS ManagerName
FROM dbo.Employees AS Employees_1
INNER JOIN dbo.Departments AS Departments_1
ON Employees_1.Department = Departments_1.DepartmentID
AND Employees_1.EmployeeID = Departments_1.DepartmentManager
2 番目のテーブルの関係に基づいて、同じテーブル (別の行) に結合する方法についてのアイデアはありますか?