大概我想要的结果是这样:
可以通过存储过程,用主键(id)查询到该节点的所有祖先,表的设计是自连接。
CREATE TABLE channel (
id INT(11) NOT NULL AUTO_INCREMENT,
cname VARCHAR(200) DEFAULT NULL,
parent_id INT(11) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
INSERT INTO channel(cname,parent_id)
VALUES ('张三',-1),('张得帅',1),('张飞',1),('张学友',2),('张苞',3);
怎么写这个存储过程呢
其实就是存储过程当中的循环应该怎么写呢。比如我想找到‘张苞’的所有祖先。同过call find_all_father(5),就可以查询到了,我该怎么实现