我有一个数据库查询。它现在已经可以工作了,但我试图将该unionAll
方法添加到此查询中,但我没有这样做。我想用方法将两个表结合起来unionAll
。
$uid = Auth::id();
$homeCovering = DB::table('bid_requests')
->leftJoin('bid_home_coverings', 'bid_requests.id', '=', 'bid_home_coverings.bidId')
->where('bid_requests.userId', '=', $uid)
->where('district', '!=', null)
->get();
$vehicleCovering = DB::table('bid_requests')
->leftJoin('bid_vehicle_coverings', 'bid_requests.id', '=', 'bid_vehicle_coverings.bidId')
->where('bid_requests.userId', $uid)
->where('district', '!=', null)
->get();
Run Code Online (Sandbox Code Playgroud)
使用unionAll()
方法,还要确保你确实需要union all,union和union all是有区别的
$homeCovering = DB::table('bid_requests')
->select('bid_requests.*')
->leftJoin('bid_home_coverings', 'bid_requests.id', '=', 'bid_home_coverings.bidId')
->where('bid_requests.userId', '=', $uid)
->where('district', '!=', null);
$bid_requests = DB::table('bid_requests')
->select('bid_requests.*')
->leftJoin('bid_vehicle_coverings', 'bid_requests.id', '=', 'bid_vehicle_coverings.bidId')
->where('bid_requests.userId', $uid)
->unionAll($homeCovering)
->where('district', '!=', null)
->get();
Run Code Online (Sandbox Code Playgroud)
或者您可以将这些查询合并为单个查询
$bid_requests = DB::table('bid_requests')
->select('bid_requests.*')
->leftJoin('bid_vehicle_coverings', 'bid_requests.id', '=', 'bid_vehicle_coverings.bidId')
->leftJoin('bid_home_coverings', 'bid_requests.id', '=', 'bid_home_coverings.bidId')
->where('bid_requests.userId', $uid)
->where('district', '!=', null)
->get();
Run Code Online (Sandbox Code Playgroud)
如果您需要不同的出价请求,请添加->distinct()
归档时间: |
|
查看次数: |
11796 次 |
最近记录: |