我有三个与 articles
相关的表,我需要使用我拥有的 staff_id
从中获取 article_id
。
我目前正在使用这三个查询。
$rejects = DB::table('rejected')->where('staff_id', $staff_id)->pluck('article_id');
$missed = DB::table('missed')->where('staff_id', $staff_id)->pluck('article_id');
$flagged = DB::table('flagged')->where('staff_id', $staff_id)->pluck('article_id');
然后合并它们
$rejects = $rejects->toArray();
$missed = $missed->toArray();
$flagged = $flagged->toArray();
$all = array_merge($rejects, $missed, $flagged);
在生产中,我的数据库将位于不同的服务器中,因此我试图减少查询数量。 如何仅使用一个数据库查询即可获得此结果。
最佳答案
使用 Laravel 的 Eloquents。它真的非常有用。它将大大减少查询的数量,并且不用担心后端数据库引擎。 引用:https://laravel.com/docs/5.5/eloquent
关于php - Laravel 数据库查询优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46763598/