2016-06-18 14 views
0

は、私はこのようなクエリがある:Laravel 5のクエリビルダを使用した複合クエリ(3レベルサブクエリ)

SELECT p.*, t3.gambar_meteran, t3.angka_meteran 
    from pelanggan p 
LEFT JOIN (SELECT t1.* 
    FROM tagihan t1 
     JOIN (SELECT no_rek_pelanggan, MAX(created_at) created_at 
      FROM tagihan 
      GROUP BY no_rek_pelanggan) t2 
     ON t1.no_rek_pelanggan = t2.no_rek_pelanggan 
     AND t1.created_at = t2.created_at) t3 
     ON p.no_rek = t3.no_rek_pelanggan` 

は、どのように私はlaravel 5.2にその複雑なクエリを使用することができますか?

私は私がそれで、この問題を解決した

+0

PLSのは、あなたが正確にしようとしたどのようなエラーメッセージたものを共有しますまたは予期しない動作が発生しました。 – Shadow

答えて

0

など、DB::rawDB:statementを使用してのような多くの方法を試してみました:

$temptable=DB::raw("(SELECT t1.* 
      FROM tagihan t1 
      JOIN (SELECT no_rek_pelanggan, MAX(created_at) created_at 
       FROM tagihan 
       GROUP BY no_rek_pelanggan) t2 
      ON t1.no_rek_pelanggan = t2.no_rek_pelanggan 
      AND t1.created_at = t2.created_at) as t3"); 

     $query = DB::table('pelanggan as p') 
     ->select('p.*','t3.gambar_meteran') 
     ->leftJoin($temptable,'p.no_rek','=','t3.no_rek_pelanggan') 
     ->get(); 

`

関連する問題