内部加入laravel

时间:2018-01-24 09:09:33

标签: mysql laravel

如何在laravel中转换此查询?

SELECT m.thumbnail,e.judul_artikel,e.id_artikel, m.id_artikel
FROM t_artikel e
INNER JOIN t_artikel m on e.parent_id = m.id_artikel
where e.publish='Y'
ORDER BY e.dibaca DESC
LIMIT 3

2 个答案:

答案 0 :(得分:1)

试试这个:

$data= DB::table('t_artikel as e')
        ->join('t_artikel as m', 'e.parent_id', '=', 'm.id_artikel')
        ->select('m.thumbnail','e.judul_artikel','e.id_artikel', 
        'm.id_artikel')
        ->where('e.publish', '=', 'Y');
        ->orderBy('e.dibaca', 'DESC')
        ->limit(3)
        ->get();

答案 1 :(得分:0)

DB::table(DB::raw('t_artikel AS e'))
  ->join(DB::raw('t_artikel AS m'), DB::raw('e.parent_id'), '=', DB::raw('m.id_artikel'))
  ->select([
      DB::raw('m.thumbnail'),
      DB::raw('e.judul_artikel'),
      DB::raw('e.id_artikel AS e_id_artikel'),
      DB::raw('m.id_artikel AS m_id_artikel')
    ])
  ->where(DB::raw('e.publish'), 'Y')
  ->orderBy(DB::raw('e.dibaca'), 'DESC')
  ->take(3)
  ->get();