Árvore MySQL ordenada por pai e filho

Estou tentando exibir uma estrutura em árvore no MYSQL com essa referência (http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/) e estou vendo que só funciona com 1 pai na mesma tabela.
Se você tem outra mesa para se juntar, nada vai bem. Exemplo:

Menu da tabela:

+----+--------+-------+
| id |  name  | order |
| 1  | Father |   0   |
| 2  | Father |   1   |
| 3  | Son    |   0   |
| 4  | Child  |   1   |
| 5  | Granson|   2   |
+----+--------+-------+

Relações de mesa

+----+---------+-----------+
| id | menu_id | parent_id |
| 1  |    1    |    NULL   |
| 2  |    2    |    NULL   |
| 3  |    3    |     1     |
| 4  |    4    |     3     |
| 5  |    5    |     4     |
+----+---------+-----------+

Faça o SELECT

SELECT child_menu.*, menu.* FROM menu, relations AS child_menu
WHERE menu.id = child_menu.menu_id
GROUP BY menu_id

Eu tenho isto:

+----+--------+-------+
| id |  name  | order |
| 1  | Father |   0   |
| 2  | Father |   1   |
| 3  | Son    |   0   |
| 4  | Child  |   1   |
| 5  | Granson|   2   |
+----+--------+-------+

Estou tentando deixar seus filhos em ordem no mesmo SELECT.
Pelo que vejo nos exemplos, só funciona se o pai estiver na mesma tabela.
Alguém pode me ajudar? obrigado

Editado: SAÍDA ESPERADA:

+----+--------+-------+
| id |  name  | order |
| 1  | Father |   0   |
| 3  | Son    |   0   |
| 4  | Child  |   1   |
| 5  | Granson|   2   |
| 2  | Father |   1   |
+----+--------+-------+

I.E. Father
       Son
         Child
            Grandson

questionAnswers(3)

yourAnswerToTheQuestion