Я пытаюсь показать имена начальников и их ответственных работников в разных столбцах.
Мне удалось сделать это с помощью перекрестного применения, но меня попросили сделать это без использования, но я не могу придумать, как это сделать.
Я использую база данных Northwind для SQL сервера, и это мой код:
CREATE PROCEDURE sp_getBossAndEmployeeNames
@bossID NCHAR(5)
AS
CREATE TABLE #TEMP_BOSSES_AND_EMPLOYEES
(
BossFullName VARCHAR(35),
EmployeeFullName VARCHAR(35)
)
INSERT INTO #TEMP_BOSSES_AND_EMPLOYEES
SELECT (FirstName + ' ' + LastName) as BossFullName, sub.EmployeeFullName
FROM Employees
CROSS APPLY
(
SELECT (FirstName + ' ' + LastName) as EmployeeFullName FROM Employees WHERE ReportsTo = @bossID
) AS sub
WHERE EmployeeID = @bossID
SELECT * FROM #TEMP_BOSSES_AND_EMPLOYEES