求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 副部长室 物资供应部

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