Yii:deleteAll和IN语句

Ole*_*eat 8 yii

我有带有ID的数组,并希望通过id删除它们

$membersId = array('1','2','3');
$inStatement = implode(',', $membersId);

//dont work!
TRatingMembers::model()->deleteAll(array('member_id IN (:member_id)'),
    array(':member_id' => $inStatement));
Run Code Online (Sandbox Code Playgroud)

如何用一个事务删除所有行?

jbo*_*rch 19

$criteria = new CDbCriteria;
$criteria->addInCondition('member_id',$membersId);
TRatingMembers::model()->deleteAll($criteria);
Run Code Online (Sandbox Code Playgroud)

http://www.yiiframework.com/doc/api/1.1/CDbCriteria#addInCondition-detail


Val*_*sky 5

if (!empty(membersId)) {
    $memberIds = implode(', ', $membersId);
    TRatingMembers::model()->deleteAll('member_id IN (' . $memberIds . ')');
}
Run Code Online (Sandbox Code Playgroud)