一个算法的求解,比较简单,只是我太笨
id p_id menuname menulevel
----------- ----------- ---------- -----------
1 0 系统设置 0
2 1 用户权限 1
3 0 知识管理 0
4 0 内容管理 0
5 3 新增知识 1
6 3 修改知识 1
8 0 再来测试 0
9 0 我的名字 0
10 9 你的名字 1
11 0 某某贸易 0
12 8 再来一杯 1
13 11 某某电话 1
14 13 某某来电 2
15 14 某某特电 3
16 0 某某物电 0
17 0 某某没电 0
18 0 某某电大 0
19 0 我的目录 0
20 19 你的目录 1
21 1 天要下雨 1
22 0 要下大雨 0
表结构如上所示,其中的menulevel是指菜单项所处的级次,为0的为根菜单,1的为0级的下一级,如此类推
,有一个问题就是,这个东东还要人工判断,在新增加菜单的时侯,由于id是一个自动增加的数,不必管了
,只要选好此级菜单是属于哪一级菜单的就好,当数据增加的时侯有一个语句来计算新增加的ID的上面已经
有了几级菜单了,然后把新的级次加到表中,可能我说的比较模糊,举个例子:
我想增加一个新的菜单是“天下没雨”,这个菜单的上一级菜单是id=15(某某特电),由插入时由语句自动
计算menulevel应该得出的是4,不知道语句要如何写?
[解决办法]
不是根据 某某特电的 menulevel +1 不就可以了么?