MSSQL系列之十四 无限极分类的解决办法

举报
tea_year 发表于 2021/12/30 01:23:49 2021/12/30
【摘要】 --自身连接:自连接 a:相当于员工表     b:相当于上级表 id  name ShangJiId    id  name ShangJiId 1  张三 0    &nbs...

--自身连接:自连接
a:相当于员工表     b:相当于上级表
id  name ShangJiId    id  name ShangJiId
1  张三 0      1  张三 0
2  杨广 0      2  杨广 0
3  孙中 0      3  孙中 0
4  牛锛 1      4  牛锛 1
5  石磊 2      5  石磊 2
--


  
  1. select a.id,a.name,a.ShangJiId,b.name as '上级名'
  2. from emp as a left join emp b
  3. on a.ShangJiId=b.Id


--他查的是有上级的小兵(中兵)
 


  
  1. select a.id,a.name,a.ShangJiId,b.name as '上级名'
  2. from emp as a inner join emp b
  3. on a.ShangJiId=b.Id

  
  1. Create table emp
  2. (
  3. id tinyint, --员工编号
  4. name varchar(8),
  5. ShangJiId tinyint --上级的编号
  6. )
  7. insert emp values(5,'石磊',2)
  8. select * from emp
  9. select a.*,b.name
  10. from emp a left join emp b on a.ShangJiId = b.id


--借花献佛 面试题
假如说,现在我们公司要做一个系统,系统针对部门进行分级,
有1级部门,2级部门,3级部门,4级部门,5级部门,6级部门,7级部门
怎么设计表???让咱学生用迭代的方式,来设计表...

UPS:美国快递(和EMS差不多), 美国分部/亚太分部/欧美分部
亚太分部:大中国区/港台地区/新加坡/...
大中国区:飞机快递/轮船快递/

id 下级部门 上级部门id
3   飞机快递   2
2   大中国区   1
9   给老鼠快递  8

文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/5895466

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。