浏览 4105 次
锁定老帖子 主题:一个简单的树的问题
该帖已经被评为新手帖
|
|||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
作者 | 正文 | ||||||||||||||||||||||||||||||||||||
发表时间:2007-04-04
表设计如下: tree:表名 id:编号 name:节点描述 pid:父编号 nodelevel:节点级别 level:节点层数 isNode:是否有节点
我通过select * from tree order by nodelevel 得到一棵树 我如何遍历 这个查询结果 得到如下信息
这样的一个结果信息
test1
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2007-04-04
递归查询,根据你的数据库类型,请自行google递归查询的SQL
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2007-04-04
如果使用ActiveRecord,可以使用act_as_tree插件
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2007-04-04
你的回答是可以实现我要的东西
但是你回答的东西不对 请看清楚题名 |
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2007-04-04
看了半天我也没看明白楼主要问什么?
用ruby里 一般来说id,parent_id,name就可以实现一个树了,如果为了增加效率可以增加计数器缓存字段,isNode字段是没有必要的,children.size能取到. 我想楼主加这么多字段是为了增加效率和读取的简便性,这本无可厚非,但在维护这个树的时候也很难去维护这些字段的数据关联完整性. 一般遍历一个树可以用递归和非递归的方法,这个算法是比较基本的,可以自己去参考一下有关资料. |
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2007-04-05
谢谢楼上的
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||
发表时间:2007-05-09
http://www.iteye.com/topic/77760
|
|||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||