1.上级ID显示的是上级部门的ID , 该公司总共有三个层级,请用SQL查询出公司的组织架构情况,结果输出三个字段:一级部门名称、二级部门名称、三级部门名称
采用自连接,取出各层部门
SELECT
d1.部门名称 AS 一级部门名称,
d2.部门名称 AS 二级部门名称,
d3.部门名称 AS 三级部门名称
FROM
(SELECT 部门ID, 部门名称 FROM table_name WHERE 上级ID IS NULL) d1
LEFT JOIN table_name d2 ON d1.部门ID = d2.上级ID
LEFT JOIN table_name d3 ON d2.部门ID = d3.上级ID
ORDER BY
d1.部门名称,
d2.部门名称,
d3.部门名称;
运行结果: