如何在laravel中使用查询生成器仅显示最后一条记录

时间:2019-12-11 08:14:54

标签: postgresql laravel-5 laravel-5.8

我只想显示已标记的tanggal_ins中的最新数据,怎么做?

这是我的json数据: enter image description here

这是我的查询:

$cuti = DB::table('t_cuti as cuti')
        ->join('m_karyawan as kary', 'kary.nik', '=', 'cuti.nik')
        ->join('m_rumah_sakit as rs', 'rs.kd_rs', '=', 'kary.kd_rs')
        ->join('m_unit as unit', 'unit.kd_unit', '=', 'kary.kd_unit')
        ->join('m_jabatan as jab', 'jab.kd_jabatan', '=', 'kary.kd_jabatan')
        ->leftJoin('t_cuti_adjust as adj', function ($leftJoin) {
            $leftJoin->on('adj.nik', '=', 'cuti.nik')
                ->latest();
        })
        ->select('adj.tanggal_ins','cuti.saldo_cuti','kary.nik','kary.nm_karyawan','rs.nm_rs','unit.nm_unit','jab.nm_jabatan')
        ->whereYear('adj.tanggal_ins', '<', $year)
        ->orWhere('adj.tanggal_ins', null)
        ->get();

谢谢。

1 个答案:

答案 0 :(得分:1)

使用orderBy

 const options = {

         download: false,
         print: false,
         viewColumns: false,
         filterTable: false,
         filter: false,
         onRowsSelect:(currentRowsSelected: any, allRowsSelected: any) => {console.log(allRowsSelected);}

     };

这将按ID降序排列。 -> orderBy('id','desc')

并使用first()代替get()。