2017-08-22 11 views
0

ページネーションを有効にする必要のある未処理のクエリがあります。私は手動のページネーションを実装する必要がありますか、またはそれを作成する方法を使用することができますか?組み込みページネーション方式を使用できる場合は、運がないまま何度も試してみたので、どうすればいいのか説明してください。LaravelはDB :: rawクエリのページングを有効にします

$sql = 'select t1.rownum, t2.rownum, t1.logged_on, t1.reading, (t1.reading - t2.reading) as diff 
      from (
       select @rownum := @rownum + 1 AS rownum, date(t.logged_at) as logged_on, t.reading 
       from parameter_log_tab t, (SELECT @rownum := 0) r 
       where t.site_id = ? 
       order by t.logged_at desc) t1 
      left join (
       select @rowno := @rowno + 1 AS rownum, date(t.logged_at) as logged_on, t.reading 
       from parameter_log_tab t, (SELECT @rowno := 0) r 
       where t.site_id = ? 
       order by t.logged_at desc) t2 
      on t1.rownum = t2.rownum - 1'; 
$result = DB::select($sql, [$site_id, $site_id]); 
+0

あなたは生のクエリを持っている場合は、あなたがあなた自身のページネーションを実装するための責任があります。プレースホルダで 'LIMIT'と' OFFSET'を追加してください。 – tadman

答えて

0

あなた自身でページネーションを作成する必要があります。このようなものを探しているかもしれません。

ここ
$collection = new Collection($put_your_array_here); 

// Paginate 
$perPage = 10; // Item per page 
$currentPage = Input::get('page') - 1; // url.com/test?page=2 
$pagedData = $collection->slice($currentPage * $perPage, $perPage)->all(); 
$collection= Paginator::make($pagedData, count($collection), $perPage); 

スタックオーバーフローリンク: Laravel 5 Pagination with Query Builder

関連する問題