1

現在、私のコードはそのように見えます

    $criteria = new CDbCriteria();
    $criteria->compare('visible', 1);
    $criteria->compare('branch_id', $this->id);

私がしたいのは、そのようなことをすることです

`branch_id`='$this->id' OR `branch_id` is NULL

compare関数でそれを行う方法は?

4

3 に答える 3

4

Yii 条件 <IS NULL>

だから多分あなたはしたいです

$idCrit = new CDbCriteria();
$idCrit->compare('branch_id', $this->id);
$idCrit->addCondition('branch_id is NULL', 'OR');

$criteria->mergeWith($idCrit);

$criteria他のすべてのものはどこにありますか?

さらに読む;

$operator(引数を具体的に見てください。)

于 2013-04-24T17:30:58.737 に答える
0

これを使用してください:
$criteria->compare('branch_id', array($this->id, null));

コードでわかるように:
https://github.com/yiisoft/yii/blob/1.1.14/framework/db/schema/CDbCriteria.php#L414

「値が配列の場合、比較は配列内のいずれかの値の完全一致によって行われます。配列。」

于 2014-02-07T03:19:28.290 に答える
0

これは私のために働く:

$criteria->compare('field', array(NULL));
于 2014-02-06T20:55:48.670 に答える