如何使用分层数据创建mysql连接查询

时间:2011-03-10 09:29:38

标签: mysql hierarchy hierarchical-data

我需要为2个表中的分层数据创建连接查询。这些表可以包含无限量的数据,其结构如下:

group_id      group_name       group_order
   1            group 1            2
   2            group 2            1


field_id    field_name    parent_group    field_order
   1         field 1           1               1
   2         field 2           2               2
   3         field 3           2               1

我目前能够使用2个选择查询获得正确的数据格式,第二个查询位于根据groups表上第一个查询的结果创建的循环内。

我从结果中得到的数据结构如下:

-group 2
      - field 3
      - field 2

- group 1
      - field 1

是否有可能从一个mysql查询中获取这些结果?我已经阅读了关于分层数据的mysql文档,我对如何合并连接感到困惑。

感谢您寻找

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您不应该在分层数据方面考虑它,您应该只能选择字段并加入您的组信息。尝试类似:

SELECT * 
FROM Fields AS F
INNER JOIN Groups AS G 
ON G.group_id = F.parent_group 
ORDER BY group_order, field_order

然后,您将使用适用的组将每个字段作为一行,也以正确的组顺序。你的循环应该能够处理你需要的显示。