Offset/limit Pagination Implementation
"Fast Paginate offers a fast
offsetpagination macro for Laravel. It can be used in place of the standard paginate methods.
This packages uses a SQL method similar to a "deferred join" to achieve this speedup. A deferred join is a technique that defers access to requested columns until after the
limithave been applied.
In our case we don't actually do a join, but rather a where in with a subquery. Using this technique we create a subquery that can be optimized with specific indexes for maximum speed and then use those results to fetch the full rows.
The benefits can vary based on your dataset, but this method allows the database to examine as little data as possible satisfy the user's intent."