Как сложить несколько запросов SQL в Laravel? - PullRequest
0 голосов
/ 09 июня 2018

как я могу сложить несколько запросов и отправить их в блейд-файл?У меня есть запрос и я получаю «PreferencesProducts» из базы данных, поэтому в соответствии с ними мне тоже нужно получить продукты.это код моего контроллера:

$preferences = DB::table('preferences')->where('customerId', $req->id)->get();

, поэтому, в соответствии с «предпочтением» вышеупомянутого запроса, я должен получить другие данные, поэтому я делаю foreach для извлечения $ preferencesProducts, а затем пишу свой запрос и сохраняю егок переменной с именем $ предпочтений

            foreach($preferences as $preference)
            {
                $preferencesedProducts= $preferencesedProducts.DB::table('products')->where('productsubCategory', $preference->preference)->get();
            }

, когда она входит в цикл, она делает несколько запросов, так как я могу суммировать и отправить их в файл blade-файла?

мой код:

return view('/customers/customerHome')->with('preferencesedProducts', $preferencesedProducts);

1 Ответ

0 голосов
/ 09 июня 2018

Вы можете использовать pluck в результате запроса предпочтений, чтобы получить массив предпочтений и запросить продукты с помощью whereIn:

$preferences = DB::table('preferences')->where('customerId', $req->id)->get();

$preferencesedProducts = DB::table('products')->whereIn('productsubCategory', $preferences->pluck('preference'))->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...