MySQL找到给定子类别的超级类别

时间:2012-07-23 07:37:27

标签: mysql sql

我有一个人为开发创建了一个数据库。在那个数据库中,我有一个这样的表。这是一种模式,如果parentID为0则为超级类别。

catID cateName parentID

1 A 0

2 B 0

3 AA 1

4 BB 2

5 AAA 3

6 BBB 4

在浏览时,我可以得到A-> AA-> AAA

“AAA”的直接上限为“AA”,“AA”的直接上限为“A”。因此,一眼就看出“AAA”的超级类别是“A”。我想获得任何子类别的超类别(其父类别为'0')。此子类别流程可以是无限的。感谢是否有人可以帮助我构建mySQL查询以获取给定子类别的超类别。

谢谢。

1 个答案:

答案 0 :(得分:1)

据我所知,如果数据以这种格式存储,则不可能使用单个查询为MySQL中的第n级子项获取root父项,因为MySQL不支持递归查询。

访问http://scvinodkumar.wordpress.com/2011/01/30/managing-hierarchical-data-in-mysql/

There was a similar discussion对此可能有助于解决此问题。