mysql 同一个表内嵌套查询 parent_id

yktd26 2012-11-07 05:40:35
我有个表,之内pk是id,有一个field parent_id指向同一个表内另一行的id,即他的parent,怎样可以做到,在给出一个id的情况下查出他所有parent行?求帮助
...全文
879 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
WWWWA 2012-11-08
  • 打赏
  • 举报
回复
MYSQL目前不支持递归查询,只有用SP来递归
ACMAIN_CHM 2012-11-08
  • 打赏
  • 举报
回复
存储过程中另加一个变量. 循环中 set var_string = concat(var_string ,var_id )
yktd26 2012-11-08
  • 打赏
  • 举报
回复
引用 5 楼 ACMAIN_CHM 的回复:
存储过程的思路就是直接不断的 执行 select parent_id into var_id from table where id = varid; 一直 do while 到返回的row为0.
谢谢,这样是不是返回最上面的parent_id啊,每次循环都重新对varid付了值,怎么可以返回所有的parentid啊
ACMAIN_CHM 2012-11-07
  • 打赏
  • 举报
回复
存储过程的思路就是直接不断的 执行 select parent_id into var_id from table where id = varid; 一直 do while 到返回的row为0.
yktd26 2012-11-07
  • 打赏
  • 举报
回复
引用 3 楼 ACMAIN_CHM 的回复:
这个无法用SQL语句来实现,仅能通过存储过程,或者在程序中递归或循环解决。 这个是从树叶向树根查询,相对比较容易实现。
如果用储存过程怎么解决? 谢谢
ACMAIN_CHM 2012-11-07
  • 打赏
  • 举报
回复
这个无法用SQL语句来实现,仅能通过存储过程,或者在程序中递归或循环解决。 这个是从树叶向树根查询,相对比较容易实现。
Tony-Lu 2012-11-07
  • 打赏
  • 举报
回复
select * from table where parent_id = '#id' and id != '#id'

56,675

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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