多级查找???

zoexy 2004-08-06 11:01:28
TableA 表结构:

AID parentID level 均为数值型
1 0 1
2 1 2
3 0 1
4 2 3
。。。。。。(多级)

TableB 表结构

ID AID price
1 1 2.0
2 3 1.0
3 4 2.0
4 2 3.0
...........(AID 表示类别ID即TableA表中AID)

现在我要求当从TableB查找某一AID时能同时查找到他所有的下级ID(包含本级)在TableB中的价格。
如:我查找TableB中AID=1,则得出的结果是:
ID AID price
1 1 2.0
3 4 2.0
4 2 3.0

但当查找TableB中AID=2,则得出的结果是:
ID AID price
3 4 2.0
4 2 3.0

但当查找TableB中AID=3,则得出的结果是:
ID AID price
2 3 1.0

但当查找TableB中AID=4,则得出的结果是:
ID AID price
3 4 2.0

level级别不可预测有多少级,我该怎么做呢?有人说用递归算法,但是我不会,请各位帮帮忙,有什么好办法可以查找呢?请给例句。谢谢大家!


因为在我的系统中多次用到此程序,所以我想做一个通用的。以下是我的思路,但是小妹才学梳浅,希望高人能帮完成。。

AID=request("AID")

Sub ListSub(AID)
sqlTableB="select * from TableB where AID='"&AID&"'"
set rsTableB = con.execute(sqlTableB)

( 如何将这里的值存起来,待递归完成后一起用do while not rsTableB.eof 显示出来呢,请帮忙。。。)
sqlTableA="select AID from TableA where parentID='"&AID&"'"
set rsTableA = con.execute(sqlTableA)
if not rsTableA.eof and rsTableA.bof then
ListSubPower(rsTableA("AID"))
end if


请帮忙将以上程序修改完整,谢谢大家!
...全文
23 点赞 收藏 1
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zoexy 2004-08-06
哦,漏了End Sub
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-08-06 11:01
社区公告
暂无公告