求教一个树的高效率的生成方法!

05-09-21 luowei
我现在想生成两种树

1》 单表的树

表中的记录有一个字段记载(如:parentid)着他的父节点的id,顶层的节点的parentid为0或空!

2》 多表的树

表的结构和单表差不多,只不过表中还有一个字段(如:parenttable)指定它的父节点所在的表名称!

请教各位高手一个高效率的生成算法!

awardsure
2005-10-07 14:50
给出一种通用的 最好的 生成方法:

前提,增加一字段命名path路径。

路径构成规则:父亲路径+自身路径前缀(prefix) 这是目录树数据库的核心思想。 例如,A 为根 路径:a 有两子 B和C 前缀分别为b,c 那B,C路径分别为a.b a.c。

取子操作不管有多少子孙节点 一次取出 select * from Xtable where path like 'a.%' order by path

采用层次遍历 构造树。

luowei
2005-10-09 11:56
首先感谢您的回答,但能否具体些,采用层次遍历 构造树,是什么意思?

能否给个例子,不胜感激!

猜你喜欢