laravel whereraw с выражением where in

Я пытаюсь использовать оператор WHERE IN в построителе запросов с помощью whereRaw, но, похоже, это не работает. Я не пытаюсь выбирать значения из других таблиц, просто выбираю из нескольких значений.

Я пробовал эти 3 подхода:

return $this->object->whereRaw("`status` = 'active' AND `salesType` IN ( ? ) AND `region_id` = ?", array("'sale','buy'","1"))->paginate(10);

return $this->object->whereRaw("`status` = 'active' AND `salesType` IN ( ? ) AND `region_id` = ?", array("sale,buy","1"))->paginate(10);

return $this->object->whereRaw("`status` = 'active' AND `salesType` IN ( ? ) AND `region_id` = ?", array(array("sale,buy"),"1"))->paginate(10);

person Björn Andersson    schedule 09.01.2014    source источник


Ответы (1)


Почему вы не используете методы where и whereIn`?

return $this->object->where('status', '=', $active)->whereIn('salesType', $array);
person Andreyco    schedule 09.01.2014
comment
Оказывается, это все-таки лучший подход :) - person Björn Andersson; 09.01.2014