mysql数据库中,有一个表
表中有两个字段 id 和pid
如同这种
id pid
1 2
2 3
3 4
省略号
800 801
这种,就是我输入一个id 为800的 如何能够找出他的所有上级 上级的意思就是我id=800的
和上面的pid 相等,并且一层层的找上去这种。
请问一下 各位大神有人会吗?
我写不出来了。
拜求大神解答!
这是我写的:
DELIMITER //
CREATE PROCEDURE test(IN id INT,OUT mainid INT )
BEGIN
SELECT @pidNum= (SELECT pid FROM admin WHERE admin.pid=3 )
WHILE ( @pidNum != -1 )
BEGIN
SELECT id = (SELECT id FROM admin WHERE admin.id=@pidNum )
END
SET mainid=@id
END
DELIMITER ;
不过是错的