1. 数据库表
组织机构表 dept
id 部门id
dept_name 部门名称
dept_rank 部门层级
updept_id 上级部门id
def_flag 是否删除的标识
插入数据:
1,一汽马自达汽车制造公司,1,1,0
2,轮轴车间,2,1,0
3,班组一,3,2,0
4,底盘车间,2,1,0
5,班组一,3,4,0
员工表 staff
id 员工id
staff_name 员工姓名
company_id 公司id
workshop_id 车间id
workteam_id 班组id
del_flag 是否删除的标识
插入数据:
1,张三,1,2,3,0
2,李四,1,4,5,0
可知,张三 是 一汽XX公司轮轴车间班组一 的员工,李四是 一汽XX公司底盘车间班组一的员工。
1.1 优点:
这种单表的层级结构设计,实现比较简单,健壮性高,即时以后层级增加,此表也能不做更改,继续使用。
1.2 缺点:
表内数据关联性过于强,一旦中间级别的组织被标记删除,其子组织都必须同步更新:被标记为删除。
2. 问题
输出员工id是2的员工的详细信息,格式如:
一汽马自达汽车制造公司底盘车间班组一李四。
3. SQL答案
select (select dept_name from dept where dept_
4. 知识点
学习和使用了那么久的SQL语法,却感觉还是第一次这么用。自己的思路还是狭隘了,没有到打开。
select 后面可以直接跟各种结果,而且 SQL不一定 需要 from table 和 where 子句等。