我试图找到一个特定领域的所有深度的父母,祖父母等。例如,给定以下结构,如果我提供5,则返回的值应为1、2、3和4。
| a | b | ----------- | 1 | 2 | | 2 | 3 | | 3 | 4 | | 4 | 5 | | 3 | 6 | | 4 | 7 |
我该怎么做?
SELECT @id := ( SELECT senderid FROM mytable WHERE receiverid = @id ) AS person FROM ( SELECT @id := 5 ) vars STRAIGHT_JOIN mytable WHERE @id IS NOT NULL