Я строю запрос, где я хочу, чтобы получить следующее:Laravel `orWhere()` функция
SELECT * из таблицы, где цвет = «белый» OR цвет = «красный»
Этот цвет фильтр и на основе выбора клиента он добавляет красный или белый цветной фильтр или даже больше цветов.
Так я тестировал с:
if(isset($input['filter']['color'])) {
$query->where(function($where) use ($input) {
foreach($input['filter']['color'] as $color) {
$where->where('color', array($color));
}
});
}
Но это приводит:
SELECT * FROM таблицы WHERE (цвет = 'белый' И цвет = 'красный')
Любой один, как может сказать мне, как это решить? Я тестировал некоторые вещи, но я не получаю результат, который я хочу. Цвет только на фильтре, есть больше параметров фильтрации.
Так например, запрос фильтра может выглядеть следующим образом:
SELECT * из таблицы, где (цвет = «белый» ИЛИ цвет = «красный») И (используется = «Y») И (размер = 1 ИЛИ размер = 2) и т.д ..
Эрвин
Никогда, хотя о том, где в функции. Это простое решение. Спасибо за совет! – user2308335