Symfony1 使用一个查询获取嵌套集

Symfony1 使用一个查询获取嵌套集,symfony1,doctrine,nested-sets,dql,Symfony1,Doctrine,Nested Sets,Dql,我正在寻找一种在一个db查询中获取嵌套集的方法 schema.yml Category: actAs: NestedSet: hasManyRoots: true rootColumnName: root_id columns: name: string(255) $categories = Doctrine::getTable('Category')->getTree(); //SELECT * FROM category c ORDE

我正在寻找一种在一个db查询中获取嵌套集的方法

schema.yml
Category:
  actAs:
    NestedSet:
      hasManyRoots: true
      rootColumnName: root_id
  columns:
    name: string(255)

$categories = Doctrine::getTable('Category')->getTree();

//SELECT * FROM category c ORDER BY c.root_id asc, c.lft asc

foreach ($categories as $cat)
{
  $cat->getNode(); 
//SELECT * FROM category c WHERE ((c.lft > '1' AND c.rgt < '8') AND c.root_id = '1') ORDER BY c.lft asc
}
schema.yml
类别:
actAs:
嵌套集:
哈斯曼尼罗:真的
rootColumnName:root\u id
柱:
名称:字符串(255)
$categories=Doctrine::getTable('Category')->getTree();
//按c.root\U id asc、c.lft asc从c类订单中选择*
foreach($类别为$cat)
{
$cat->getNode();
//从类别c中选择*,其中((c.lft>'1'和c.rgt<'8')和c.root_id='1')按c.lft asc排序
}
所以,总的来说,我得到的查询和类别一样多,这很糟糕。有什么想法吗?

看看fetchTree()