2016-11-05 96 views
1

我有這樣的SQL語法Laravel 5.2:如何編寫查詢生成器2上。在此右連接

SELECT vehicles.license_plate, vehicles.year, vehicles.status, vehicles.zone_id, vehicles.car_class_id, harga_sewa.value, harga_sewa.description 
FROM `vehicles` 
RIGHT JOIN `harga_sewa` ON vehicles.zone_id = harga_sewa.zone_id 
AND vehicles.car_class_id = harga_sewa.car_class_id 

我怎麼能寫這樣的事情?

DB::table('vehicles') 
       ->rightJoin('harga_sewa', 'vehicles.zone_id', '=', 'harga_sewa.zone_id', AND vehicles.car_class_id = harga_sewa.car_class_id) 
       ->select(*) 

回答

3

嘗試

DB::table('vehicles') 
      ->rightJoin('harga_sewa', function ($join) { 
       $join->on('vehicles.zone_id', '=', 'harga_sewa.zone_id'); 
       $join->on('vehicles.car_class_id', '=', 'harga_sewa.car_class_id'); 
      }) 
      ->get(); 
0

在移動設備上,所以不能測試,但是從內存中這應該工作:下面的代碼

DB::table('vehicles') 
    ->rightJoin('harga_sewa', 'vehicles.zone_id', '=', 'harga_sewa.zone_id') 
    ->rightJoin('harga_sewa', 'vehicles.car_class_id', '=', 'harga_sewa.car_class_id') 
    ->select('*') 
    ->get();