树形节点查询问题
求存储过程
Tab1
id Sname Nlevel
1 a -1
2 a1 1
3 a2 2
4 b -1
Tab2
Sid Fid
2 1
3 2
2 4
调用存储过程exec (id,FId) ->这里的Fid是根
示例1:
exec(3,1)
结果
id Sname
1 a
2 a1
3 a2
示例2:
exec(3,4)
结果
id Sname
4 b
2 a1
3 a2
其实就是在a1这一级有可能同时属于a类或b类但根据Fid(根)的不同要得到不同的树,我这样设计是否合理?有其它什么方法更合理吗?树不会太多至多四级数据量也就是几千条。
谢谢大家