Php 原则:顺序连接记录

Php 原则:顺序连接记录,php,doctrine,left-join,Php,Doctrine,Left Join,我对条令一无所知:我对合并记录的排序有问题 样品 我有一个与1N中的源模型关联的文章模型。源模型有一个名为“position”的属性,该属性具有整数值 现在我想取一篇文章,它的来源是按位置排序的。我的DQL如下所示: $q = Doctrine_Query::create() ->select('a.title, s.content') ->from('Article a') ->leftJoin('a.Source s') ->where('a.id =

我对条令一无所知:我对合并记录的排序有问题

样品

我有一个与1N中的源模型关联的文章模型。源模型有一个名为“position”的属性,该属性具有整数值

现在我想取一篇文章,它的来源是按位置排序的。我的DQL如下所示:

$q = Doctrine_Query::create()
  ->select('a.title, s.content')
  ->from('Article a')
  ->leftJoin('a.Source s')
  ->where('a.id = ?')
  ->orderBy('s.position');
如果我编辑位置,结果不会改变

致以最良好的祝愿,
塞巴斯蒂安

嗯。。。应该可以。或许可以尝试以下两种方法之一:

->orderBy('s.position DESC')
->orderBy('s.position ASC')

是的,看起来不错。尝试使用从DQL生成SQL,并使用结果查询数据库。如果仍然存在错误的输出,则可能是数据问题,或者更可能是DQL问题。

也许您应该包括用于排序的列(s.position),因此请尝试以下操作:

$q = Doctrine_Query::create()
->select('a.title, s.content, s.position')
->from('Article a')
->leftJoin('a.Source s')
->where('a.id = ?')
->orderBy('s.position');

我也有同样的问题。。。仍然没有解决方案:/