Используйте unoinAll()
метод, также убедитесь, что вам действительно нужен объединение всех, есть разница между 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();
Или вы можете объединить эти запросы в один запрос
$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();
Если вам нужны разные заявки, добавьте ->distinct()