Моя таблица имеет две строки для сотрудника с разными значениями статуса и кода сотрудника, и я хочу написать запрос для генерации 1 строки с двумя столбцами для кодов сотрудников на основе разных положение дел.Создайте два столбца из одного, на основе другого where where
Вот данные из таблицы,
EmployeeId First_Name Last_Name Sex Employee_Code Status
---------- ---------- --------- --- ------------- ------
91224 Jane Scott F 7754 Active
91224 Jane Scott F 8234 Inactive
Это мой запрос,
SELECT ISNULL(e.EmployeeId, '') AS EmployeeId,
e.First_Name AS FirstName, e.Last_Name AS LastName,
e.Sex AS Gender,
e1.Employee_Code AS CurrentEmployeeCode,
e2.Employee_Code AS PreviousEmployeeCode
FROM #tempEmployee e
LEFT JOIN #tempEmployee e1 ON e.EmployeeId = e1.EmployeeId AND e.Status = 'Inactive'
LEFT JOIN #tempEmployee e2 ON e.EmployeeId = e2.EmployeeId AND e.Status = 'Active'
WHERE e.EmployeeId = '91224'
Это мой результат:
EmployeeId FirstName LastName Gender CurrentEmployeeCode PreviousEmployeeCode
---------- --------- -------- ------ ------------------- --------------------
91224 Jane Scott F NULL 8234
91224 Jane Scott F 7754 NULL
Я хочу иметь одну строку для этого employeeId с двумя столбцами currentemployeecode и previousemployeecode.
Вы можете рассмотреть возможность размещения некоторые выборочные данные из фактической таблицы '#tempEmployee 'alonng с вашей таблицей результатов – techspider