我试图返回我的表(MySQL)的父ID,这是返回:
ID NOME PARENT_ID
1 Project (null)
2 Sub 1
3 Sub-Sub 2
4 Sub-Sub-Sub 3
我需要这个:
ID NOME PARENT_ID FATHER_ID
1 Project (null) (null)
2 Sub 1 1
3 Sub-Sub 2 1
4 Sub-Sub-Sub 3 1
这是fiddle
最佳答案
我必须使用这样的函数(link SO PT-BR):
CREATE FUNCTION getRoot(idSearch INT)
RETURNS INT DETERMINISTIC
BEGIN
SET @idParent = idSearch;
WHILE (@idParent != 0) DO
SET @idFound = @idParent;
SET @idParent = (SELECT id_parent FROM arvore WHERE id = @idParent);
END WHILE;
RETURN @idFound;
END
<强> SQL Fiddle 。
<强> SQL Fiddle2 。
关于mysql - 如何在此查询中返回 'Father ID' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27320237/