Vì bạn có một số lượng nhân viên được tuyển dụng trong danh sách của mình (từ nhận xét của bạn), bạn không cần nó phải năng động. Một trục xoay thông thường nên thực hiện thủ thuật:
select [Company Name],Emp1,Emp2,Emp3,Emp4 from (
SELECT
[Company Name],
[Employee Name],
'Emp' + cast(ROW_NUMBER() OVER (PARTITION BY [Comp ID] ORDER BY [Design ID], [Emp ID] desc) as char(2)) as RowNum
FROM
(
SELECT emp.[Emp ID],
comp.[Company Name],
design.[Designation],
emp.[Design ID],
emp.[comp id],
emp.[Employee Name],
ROW_NUMBER() OVER (PARTITION BY emp.[Comp ID], emp.[Design ID] ORDER BY emp.[Comp ID] desc, emp.[Design ID] desc, emp.[Emp ID] desc) RowNum
from employee as emp
join designation as design on design.[Design ID]=emp.[Design ID]
join company as comp on comp.[Comp ID]=emp.[Comp ID]
) a
WHERE RowNum <=2
) as pivotdata
pivot (max([Employee Name]) for [RowNum] in (Emp1,Emp2,Emp3,Emp4)) as P