更新FrontLine以获得树状结构

时间:2013-08-12 05:50:40

标签: jquery mysql sql database

我有一张像

这样的表格
ID | ParentID |FrontLine| Name | Address
----------------------------------------
1  | Null     |        | Xyz  | Home
2  |   1      |        | ABC  | Home
3  |   2      |        | DEF  | Home
4  |   3      |        | GHI  | Home
5  |   3      |        | GHI  | Home

我需要用查询填充FrontLine。例如,FrontLine for 1将是2,3,4,5而FrontLine for 3将是4,5

所以查询后的表应该看起来像

ID | ParentID |FrontLine| Name | Address
----------------------------------------
1  | Null     |2,3,4,5 | Xyz  | Home
2  |   1      |3,4,5   | ABC  | Home
3  |   2      |4,5     | DEF  | Home
4  |   3      |Null    | GHI  | Home
5  |   3      |Null    | GHI  | Home

如何使用MySQL查询执行此操作?

1 个答案:

答案 0 :(得分:0)

我认为你不能在一个更新查询中执行此操作。 MySQL不处理树结构查询。 (Oracle有connect by priorstart with来组织结构,但MySQL不能这样做。)

我会编写一个存储过程,每次执行时会逐步更新一个级别并增加FrontLine值。