系统菜单表
create table sys_menu(menu_id number primary key,menu_name varchar2(50) not null,menu_parentId number not null, --指向本表的menu_id,用于列出上下级关系;nenu_url varchar(100),menu_level number);
在查询结果中需要以上下级关系显示菜单,这里用到的是oracle中的迭代,具体sql如下:
select menu_id,case when menu_level=1 then '----'||menu_name when menu_level=2 then '----------'||menu_name else menu_name end as menu_name,menu_parentId,nenu_url,menu_level from sys_menustart with menu_id=1CONNECT BY PRIOR menu_id = menu_parentIdORDER SIBLINGS BY menu_id
具体CONNECT BY PRIOR用法这个递归网上有很全面的解说,
至此,笔记以加深印象。