通过user_id 查菜单
user_id 已知,则不需要再去user表查询,直接去user_role表去查role
(要查的是role,所以role在左侧)
SELECT * FROM sys_role
LEFT JOIN sys_user_role ON sys_user_role.`role_id`=sys_role.`role_id`
WHERE sys_user_role.`user_id`="1";
已经查到 role ,则 role 已知,去role_menu 表,查看 role 所对应的 menu_id
把上次查询的结果当成一个 临时表
SELECT *
FROM sys_role
LEFT JOIN sys_user_role ON sys_user_role.`role_id` = sys_role.`role_id`
LEFT JOIN sys_role_menu ON sys_role.`role_id` = sys_role_menu.`role_id`
WHERE sys_user_role.`user_id` = '1';
已经查到 role 所对应的 menu_id , 去 menu 表查menu_id 对应的 menu
把上次查询的结果当成一个 临时表
SELECT sys_menu.*
FROM sys_role
LEFT JOIN sys_user_role ON sys_user_role.`role_id` = sys_role.`role_id`
LEFT JOIN sys_role_menu ON sys_role.`role_id` = sys_role_menu.`role_id`
LEFT JOIN sys_menu ON sys_role_menu.`menu_id` = sys_menu.`menu_id`
WHERE sys_user_role.`user_id` = '1';
即可关联查询到user_id对应的menu菜单