Предложение WHERE IN с использованием propel в symfony - PullRequest
3 голосов
/ 13 июля 2010

Как я могу создать следующий запрос, используя propel?

UPDATE tablename SET status = 1 WHERE id IN (1,2,3,4)

Ответы [ 2 ]

7 голосов
/ 13 июля 2010
$con = Propel::getConnection();

$selectCriteria = new Criteria();
$selectCriteria->add(TablenamePeer::ID, array(1,2,3,4), Criteria::IN);

$updateCriteria = new Criteria();
$updateCriteria->add(TablenamePeer::STATUS, 1);

BasePeer::doUpdate($selectCriteria, $updateCriteria, $con);
1 голос
/ 13 июля 2010

Попробуйте:

$criteria = new Criteria();
$criteria->add(ClassPeer::ID, array(1,2,3,4), Criteria::IN);

(я не использовал IN, поэтому я только предполагаю, что аргумент 'value' должен быть массивом). Документация Criteria API находится по адресу 1 .

...