with cte as(
select a.menu_code,a.menu_name,a.menu_parent_codefrom sys_menu a where menu_code=#{menu_code}
union all
select k.menu_code,k.menu_name,k.menu_parent_codefrom sys_menu k inner join cte c on c.menu_code = k.menu_parent_code
)
delete from sys_menu where menu_code in(select menu_code from cte);
上面用到了with as() delete from where in(select );其中还有union all,inner join on语句
select b.checked ,a.permission_code,a.permission_name
from sys_permission a left join (
select 'true' as checked,role_code,permission_code from sys_role_permission where role_code='BPay')b
on a.permission_code=b.permission_code;
上面用到select from left join (select )on 语句