2列でクエリをソートする必要があります。これはpropelを使って可能ですか?propelで複数の列で注文する方法
私が試した:
$c->addAscendingOrderByColumn(self::COL1);
$c->addAscendingOrderByColumn(self::COL2);
をしかしaddAscendingOrderByColumnへの2回目の呼び出しは、最初のものを上書きします。
よろしくお願いします。 Radu。
2列でクエリをソートする必要があります。これはpropelを使って可能ですか?propelで複数の列で注文する方法
私が試した:
$c->addAscendingOrderByColumn(self::COL1);
$c->addAscendingOrderByColumn(self::COL2);
をしかしaddAscendingOrderByColumnへの2回目の呼び出しは、最初のものを上書きします。
よろしくお願いします。 Radu。
あなたはPropel 1.4(symfonyの1.4)を使用している場合は残念ながら、あなたがそこに生のSQLに切り替える必要がありますようだ...
(旧)symfonyのフォーラムで回答なし:http://oldforum.symfony-project.org/index.php/m/90447/
しかし、Propel 1.5以降は新しい構文(Doctrineスタイル)で動作するはずです。これはPropelのドキュメントでは詳しく述べられていませんが、私がこれをテストすると動作します(ORDER BY author.name ASC, author.id DESC
)。
おそらくPropel 1.5にアップグレードすることを検討してください。
私はこの問題に苦しんでいたし、この記事を読んだ後、私はほとんどあきらめてきた...しかしsuddendly私はこの解決策を見つけた:
$criteria->addAscendingOrderByColumn(ClassPeer::COLUMN1)->addAscendingOrderByColumn(ClassPeer::COLUMN2);
このようにaddAscendingOrderByColumnへの2回目の呼び出しは、順序が追加されます最初のものに。
この回答には正しいとマークする必要があります。 – Agrest