在laravel中一次执行多个查询 [英] execute multiple quires at once in laravel
问题描述
当用户进入主页时,我需要执行3次查询.
I need to execute 3 quires when user comes to main page.
public function index()
{
$slider = \App\Slider::select("title", "poster", "link", "sub_title")->translate()->orderBy("created_at", "asc")->get();
$services = \App\Page::getPage(24)->tabs()->translate()->get();
$partners = \App\Partner::select('id', 'title', 'link')->translate()->get();
return view('Front/index', compact('slider', 'services', 'partners'));
}
如您所见,我需要从滑块获取图像,获取页面数据并获取一些公司合作伙伴信息.所以我执行3要求得到我想要的.有没有办法只进行一个查询并将所有这三个查询合并为一个?我想要类似php中的multi_query
函数.不管是雄辩的还是查询构建的.
p.s.我的关系并不雄辩,这些数据彼此之间没有联系
as you can see, I need to get images from slider, take page data and take some company partners info. so i execute 3 quires to get what i want. is there way to make only one query and union all these 3 quires in one? I want something like multi_query
function in php. no matter it would be in eloquent or query builder.
p.s. I don't eloquent relationships, these data aren't related to each other
推荐答案
只需将您的查询放入$qry=DB::select("your_query");
return view('your_view',compact('qry'));
您也可以看到以下内容,以更好地理解
you can see following also for better unterstand
$emp_id="5623";
$var_start_date=$request->startdate;
$data_query= DB::select("SELECT orinfo.*,
chinfo.name as chname
FROM order_info orinfo, ch_info chinfo
WHERE orinfo.ch_id= chinfo.ch_id
AND orinfo.emp_id= ?
AND
to_char(orinfo.order_Date,'mm/dd/yyyy') BETWEEN ? AND ? order by orinfo.order_Date desc",[$emp_id,$var_start_date,$var_end_date]);
这篇关于在laravel中一次执行多个查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!