显示生成的分层查询

时间:2014-08-20 08:03:12

标签: mysql hierarchical-query

我需要进行分层查询,作为附加输出,我需要在数据树中显示每个节点的生成。

已知最大代数,但对于不同的祖先,节点可能属于不同代。

最后,我需要一个表格,显示每个第一代条目的所有后代,可能有几次出现的条目。

起始表(例如:路由查找器,最大代数3):

ID_object | name_object | ID_parent
-----------------------------------
1         | Bus Line 1  | NULL
2         | Bus Line 2  | 1
3         | Tram Line 1 | 1
4         | Train Line 1| 3
5         | Tram Line 2 | 6
6         | Train Line 2| NULL
7         | Bus Line 3  | 3

结果表应如下所示:

ID_object | name_object | ID_ancestor | ID_parent | Generation
1         | Bus Line 1  | 1           | NULL      | 1
2         | Bus Line 2  | 1           | 1         | 2
3         | Tram Line 1 | 1           | 1         | 2
4         | Train Line 1| 1           | 3         | 3
7         | Bus Line 3  | 1           | 3         | 3
6         | Train Line 2| 2           | NULL      | 1
5         | Tram Line 2 | 2           | 6         | 2

如何有效地计算发电量?我的第一个想法,来自更多的程序编程,作为递归,但在MySQL中不起作用......

0 个答案:

没有答案