0

特定の月にすべてのFooを取得するために、推進基準を使用してクエリを作成しようとしています。

たとえば、3月にすべてのFooが必要です。通常のSQLでは、次のようなクエリを作成します。

SELECT * FROM FooPeer WHERE MONTH(startDate) = 3

「Criteriaオブジェクト内のMySQLMonth-function」をどのように実装できるかについてのアイデアはありますか?

$c = new Criteria();
$c -> add(FooEvent::START_DATE, 3, Criteria::EQUAL); //where do I have to put the Month function ?
return self::doSelect($c);
4

2 に答える 2

2

了解しました。カスタム基準がその役割を果たしました。

$month = 3; //march
$criteria->add(FooPeer::START_DATE, 'MONTH('.FooPeer::START_DATE.')='. $month, Criteria::CUSTOM);
于 2009-03-04T11:24:12.403 に答える
0

この質問の一部はそこで回答されました: How to use MySQL functions in Propel

Criteria::CUSTOM を使用するか、カスタム SQL を記述することが唯一の解決策のようです。

于 2009-03-04T10:50:38.550 に答える