简单sql查询,高分求助(层次化查询)

ywcyj 2006-07-16 08:14:03
我的表结构(menu表)
id name fatherid
1 a <null>
2 b 1
3 c 2
4 d 1
5 f <null>
6 g 5
7 i 5
8 new 7
9 d 4

查询id=1 的记录及它下层的记录,要求得到结果为
id name fatherid
1 a <null>
2 b 1
3 c 2
4 d 1
9 d 4
...全文
125 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
湖中仙人 2006-07-16
  • 打赏
  • 举报
回复
不懂,这是什么数据库格式??
ywcyj 2006-07-16
  • 打赏
  • 举报
回复
ms sql 下不认识
ywcyj 2006-07-16
  • 打赏
  • 举报
回复
oracle下 好像可以这样写
SELECT id , name, fatherid
FROM Menu start WITH id = 1 connect BY
prior id = parent_id;
Knight94 2006-07-16
  • 打赏
  • 举报
回复
你不能直接通过查询获得,因为不知道嵌套的层数,

你需要通过逐层来递归查找,
也就是
1、先获得以1为ParentID地记录集;
2、循环此记录集,通过ID然后查找以此ID为ParentID地记录集,然后用DataSet.Merge来合并;
3、循环2直至最后。
ywcyj 2006-07-16
  • 打赏
  • 举报
回复
没人?
自己顶一下
表结构为id name fatherid,其他为示例数据

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧