在SQL中,如果一个表有colums empid,emp,salary,managerid .....那么我们将如何找到colums的结果作为员工姓名,经理姓名,薪水

时间:2012-01-28 02:32:43

标签: asp.net sql sql-server-2005

如果给你以下结构给出的表格。

empid | empname | salary | managerid

如何找到结果

empid | empname | salary | managername

因为经理也是员工的一部分

2 个答案:

答案 0 :(得分:1)

SELECT
 x.empid,
 x.empname as 'EmployeeName',
 x.salary as 'Salary',
 (SELECT empname FROM Tablename WHERE empid = x.managerid) as 'ManagerName'
FROM
 Tablename x

答案 1 :(得分:0)

您可以进行自我加入,将第一个表(员工)的ManagerId链接到第二个使用员工(经理)的EmpId

SELECT e.empid, e.empname, e.salary
   , COALESCE(m.empname, 'NoManager') AS ManagerName
FROM Employee AS e
LEFT JOIN Employee AS m ON e.ManagerId = m.empId