Laravel запрос — где или где комбинированный

#php #mysql #laravel #eloquent #laravel-query-builder

#php #mysql #laravel #красноречивый #laravel-конструктор запросов

Вопрос:

У меня есть коллекция Products и

productVendors: ["ASICS TIGER","FLEX FIT"]

Типы продуктов: ["SHOES","T-SHIRTS"]

productTags: ["autumn","cap"]

Я могу легко написать:

 $products->whereIn('productVendors', ["ASICS TIGER","FLEX FIT"])
         ->whereIn('productTypes', ["SHOES","T-SHIRTS"])
         ->whereIn('productTags', ["autumn","cap"])->get();
 

но это не то, что мне нужно.

Мне нужно получить все продукты, но вот так ->whereIn('productVendors', ["ASICS TIGER","FLEX FIT"]) OR ->whereIn('productTypes', ["SHOES","T-SHIRTS"]) OR ->whereIn('productTags', ["autumn","cap"])->get();

Было бы идеально, если у Laravel есть запрос orWhereIn , но нет: (

Как я могу создать такой запрос?

Ответ №1:

У Laravel есть или где, я не понимаю, почему вы думаете, что у него нет

 $products->orWhereIn('productVendors', ["ASICS TIGER","FLEX FIT"])
         ->orWhereIn('productTypes', ["SHOES","T-SHIRTS"])
         ->orWhereIn('productTags', ["autumn","cap"])->get();
 

вы можете найти документ в разделе Where / whereNotIn / orWhereIn / orWhereNotIn .

Комментарии:

1. Как насчет версии 5.8??

2. он также имеет:laravel.com/api/5.8/Illuminate/Database/Query /…