Oracle PL/SQL:
Select Level as 级数,ID,上级ID,名称 From 材料表
Start With 上级ID is NULL Connect by ID=上级ID
------------------------------------------------
级数 ID 上级ID 名称
------- -------- -------- ---------------
1 23 NULL 电脑配件
2 42 23 显示器
3 45 42 LED显示器
3 46 42 CRT显示器
4 52 46 纯平显示器
4 53 46 球面显示器
2 11 23 光盘驱动器
3 12 11 普通光驱
3 13 11 刻录光驱
3 67 11 DVD光驱
1 14 NULL 电脑耗材
....
------------------------------------------------
树形结构如下:
电脑配件
显示器
LED显示器
CRT显示器
纯平显示器
球面显示器
光盘驱动器
普通光驱
刻录光驱
DVD光驱
电脑耗材
------------------------------------------------
我想无论数据开始怎么排列,在sql server 中经过查询语句后能够按照上面的顺序显示出来。
Select Level as 级数,ID,上级ID,名称 From 材料表
Start With 上级ID is NULL Connect by ID=上级ID
------------------------------------------------
级数 ID 上级ID 名称
------- -------- -------- ---------------
1 23 NULL 电脑配件
2 42 23 显示器
3 45 42 LED显示器
3 46 42 CRT显示器
4 52 46 纯平显示器
4 53 46 球面显示器
2 11 23 光盘驱动器
3 12 11 普通光驱
3 13 11 刻录光驱
3 67 11 DVD光驱
1 14 NULL 电脑耗材
....
------------------------------------------------
树形结构如下:
电脑配件
显示器
LED显示器
CRT显示器
纯平显示器
球面显示器
光盘驱动器
普通光驱
刻录光驱
DVD光驱
电脑耗材
------------------------------------------------
我想无论数据开始怎么排列,在sql server 中经过查询语句后能够按照上面的顺序显示出来。
Select Level as 级数,ID,上级ID,名称 From 材料表
Start With 上级ID is NULL Connect by ID=上级ID
这个语句可以么?
层数在实际中假如能够确定呢?添加的数据可以选择所属大类,这样,它的层数就是父类+1;
那条语句我没有试过,我是在看另一篇讨论如何根据现有数据生成一棵TreeView中看到的。
谢谢指点!