2016-11-24 2 views
0

Meine Suchevon RawQuery zu Laravel Konvertieren 5 Abfrage

select * from amos.equipment_oil 
inner join (
    select max(creation_date) as MaxDate 
    from amos.equipment_oil 
    group by DATE_FORMAT(creation_date, '%m-%d-%Y') 
) tm on equipment_oil.creation_date= tm.MaxDate 
where equipment_id = $id 
order by creation_date asc 

Ich möchte, dass konvertieren 5 Abfrage Laravel. Bitte helfen Sie. Das ist was ich bisher habe.

$equipmentOil = EquipmentOil::where('equipment_id', $id)->orderBy('creation_date', 'asc')->get(); 

Antwort

0

Versuchen Sie folgendes:

$equipmentOi = 
DB::table('users') 
     ->select('equipment_oil.*') 
     ->join(DB::raw("(select max(creation_date) as MaxDate 
          from amos.equipment_oil 
          group by DATE_FORMAT(creation_date, '%m-%d-%Y')) tm"), function($join) { 
      $join->on('equipment_oil.creation_date', '=', 'tm.MaxDate'); 
     }) 
     ->where('equipment_id', $id) 
     ->orderBy('creation_date', 'asc') 
     ->get();