SQL语句求解,高手帮忙!

cqzhangq 2002-09-26 10:41:04
有一个表A,如下:
id text parent_id(上一级节点) level(第几层)
1 节点 1 1
2 子节点 1 2
3 子节点 1 2
4 子节点 2 3
5 子节点 3 3
如何用一条SQL找到某个节点的所有父节点的ID,
存储过程也行。
请高手指点,谢谢
...全文
24 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Yang_ 2002-09-26
  • 打赏
  • 举报
回复
declare @temp tabel(id int)

insert @temp(id)
select parent_id from a where id=@id and parent_id<>id

while exists(
select parent_id from a
where id in (select id from @temp)
and parent_id not in (select id from @temp)
)
insert @temp(id)
select parent_id from a
where id in (select id from @temp)
and parent_id not in (select id from @temp)

select id from @id

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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