sql 从manager_id = 3开始通过公司表旋转。将经理的姓名添加到结果中。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 从manager_id = 3开始通过公司表旋转。将经理的姓名添加到结果中。相关的知识,希望对你有一定的参考价值。

WITH RSFC(EMPID,ENAME,MGRID,LVL) AS
  (SELECT EMPLOYEE_ID,
    EMPLOYEE_NAME,
    MANAGER_ID,
    0 AS LVL
  FROM COMPANY
  WHERE MANAGER_ID = 3
  UNION ALL
  SELECT EMPLOYEE_ID,
    EMPLOYEE_NAME,
    MANAGER_ID,
    LVL+1
  FROM RSFC R
  INNER JOIN COMPANY F
  ON F.MANAGER_ID = R.EMPID
  )
SELECT a.EMPID,
  a.ENAME,
  a.MGRID,
  a.LVL,
  B.EMPLOYEE_NAME AS MGR_NAME
FROM RSFC a
LEFT JOIN COMPANY B
ON a.MGRID = B.EMPLOYEE_ID
ORDER BY a.LVL,
  a.EMPID

以上是关于sql 从manager_id = 3开始通过公司表旋转。将经理的姓名添加到结果中。的主要内容,如果未能解决你的问题,请参考以下文章

SQL 基础之使用子查询检索数据(二十二)

不允许 SQL Server 约束子查询

怎样清空数据库sql 2000,清空后让表的id从1开始

怎样清空数据库sql 2000,清空后让表的id从1开始

jdbc详解

sql 从parent_key开始,通过族表旋转为空