2010-06-14 68 views
2

我是新來的教條:我有一個連接記錄的排序問題。PHP:學說:訂單加入記錄

樣本。

我有一個文章模型,它與1 < - > n中的源模型相關聯。源模型具有一個名爲「位置」的屬性,具有整數值。

現在我想獲取一個文章,它的來源orderes的位置。我的DQL如下所示:

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

如果我編輯位置,結果不會改變。

最好的問候, 塞巴斯蒂安

+0

我有同樣的問題...仍然沒有solutin:/ – 2013-11-13 18:10:48

回答

0

嗯......它應該做的。也許可以嘗試以下任一種:

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

是的,它看起來沒問題。嘗試使用getSqlQuery()從DQL生成SQL,並使用結果查詢數據庫。如果仍然存在錯誤的輸出,那麼可能是由於數據問題或更可能與DQL有關。

0

也許你應該包括你正在使用的排序(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');