Yii2 - Создание 'И (условие1 ИЛИ условие2)' в построителе запросов

Это мой назначенный запрос:

SELECT * FROM `post` WHERE `category`='2' AND (`a` > 100 OR `b` > 200)

Я могу использовать следующий код:

$query->andWhere('a>100 OR b>200');

но я хочу полностью использовать QueryBuilder вот так:

$query->andWhere([
   $query->orWhere('>', 'a', 100),
   $query->orWhere('>', 'b', 200)
]);

Возможно ли такое?


person andrzej1_1    schedule 20.09.2015    source источник


Ответы (1)


$query
    ->where(['and', 'category = :category', ['or', 'a > :a', 'b > :b']])
    ->addParams([
        ':category' => 2,
        ':a' => 100,
        ':b' => 200
    ]);

Дополнительная информация

person cetver    schedule 20.09.2015