日期:2014-05-18  浏览次数:20855 次

探讨树型结构数据的建表与显示方式
问题:有一批数据,分大类、中类、小类三种层次,要求建表和WEB树形显示。
方式1:
建一张表: ID:大类(2位)+中类(3位)+小类(4位)
  NAME:类名称
显示:通过分离ID来获取某记录是大类还是中类还是小类,以及从属关系。
比如:010000000 大类1 010020000 大类1的中类2 010020013 大类1的中类2的小类13

方式2:
建三张表:大类表、中类表、小类表
  ID 序号
  NAME 类名称
  FATHER_ID 上级类ID
显示:通过ID关联来获取从属关系

请大家分析下上述2种方式的优劣,或者有没有其他方式可以借鉴?

------解决方案--------------------
就建一个表,通过ParentId自关联,这样灵活实现无限级
------解决方案--------------------
Up
------解决方案--------------------
第二种方法比较好
------解决方案--------------------
建一张表: ID:大类(2位)+中类(3位)+小类(4位)
NAME:类名称 

01 大类
0101 中类
010101 小类
010102 小类
02 大类
0201 中类
020101 小类
020102 小类
查询的时候用like "'+str+"__'";
str是参数 比如str="01",就把“01”下面的中类全查出来,然后递归就可以创建树了
------解决方案--------------------
ID 类名 R
1 01 0
2 001 1
3 0001 2
4 002 1
5 0002 2
6 0003 4
7 02 0



ID 1类 ID 2类 R(1) ID 3类 R(2)
1 01 1 001 1 1 0001 1
2 02 2 002 1 2 0002 1
3 0003 2

比较 叫知道了 
查找时间