幽泽明  2022-05-26 11:14 采纳率: 33.3%
浏览 102
已结题

求sql语句:查询所有人员,按照部门自身的排序分组查询

求sql语句:查询所有人员,按照部门自身的排序分组查询

用户user表:id,realname,departmentid
部门department表:id,mingcheng,parentid,paixu
部门是无限树结构,每个部门都有paixu

希望实现查询所有人员信息,按照部门的paixu顺序分部门排序

例如:
department表:
| id | mingcheng | parentid | paixu |
| 1 | 综合管理部 |0 | 1 |
| 2 | 部长室 | 1 | 1 |
| 3 | 副部长室 | 1 | 2 |
| 4 | 办公室 |1 | 3 |
| 5 | 物资供应部 |0 | 2 |
| 6 | 部长室 | 5 | 1 |
| 7 | 副部长室 | 5 | 2 |
| 8 | 办公室 |5 | 3 |

查询出来的结果是:
用户a 部长室 综合管理部
用户b 副部长室 综合管理部
用户c 部长室 物资供应部
用户d 副部长室 物资供应部

  • 写回答

1条回答 默认 最新

  • 葛芮拉 2022-05-26 11:34
    关注
    select t.realname, t.mingcheng, d1.mingcheng from (
    select u.id, u.realname, d.mingcheng, d.parentid, d.paixu from user u inner join department d on u.departmentid = d.id
    ) t inner join department d1 on t.parentid = d1.id order by d1.paixu, t.paixu
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月3日
  • 已采纳回答 5月26日
  • 创建了问题 5月26日