1.用户-角色
sql
select su.nickname ,sr.name as role_name
from system_user_role sur
left join system_users su on su.id=sur.user_id
left join system_role sr on sr.id = sur.role_id
2. 用户-部门
sql
WITH RECURSIVE dept_hierarchy AS (
SELECT
id,name AS dept_name,parent_id,CAST('' AS CHAR(20)) AS parent_dept_name,0 AS level
FROM system_dept WHERE id = 0
UNION ALL
SELECT
t1.id,t1.name AS dept_name,t1.parent_id,
t2.dept_name AS parent_dept_name,t2.level + 1 AS level
FROM system_dept t1
JOIN dept_hierarchy t2 ON t1.parent_id = t2.id
WHERE t1.id != 0
)
,t_dept as(
SELECT id,parent_id,
dept_name,
parent_dept_name,
level AS dept_level
FROM dept_hierarchy
ORDER BY level, id)
select su.nickname ,td.dept_name
from system_users su
left join t_dept td on td.id =su.dept_id;
3. 角色-页面
sql
select sr.name,sm.name
from system_role_menu as srm
left join system_role as sr on srm.role_id =sr.id
left join system_menu as sm on srm.menu_id=sm.id;