Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

31 ms

Page Size

50

Current Page

295 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 295 Results Showing 14701 - 14750 of 24441

ID Name Category Price Stock Rating Reviews SKU
15260 Bulk Product 4da05ff4 Sports & Outdoors $754.09 344 3.3 7 BULK-01ddc871
15261 Bulk Product 542fa7c2 Sports & Outdoors $482.51 212 2.7 99 BULK-b9114c06
15262 Bulk Product eb25a036 Books $508.72 398 2.8 40 BULK-7df78b1c
15263 Bulk Product e9d350b4 Sports & Outdoors $817.17 86 4.3 74 BULK-22ae5327
15264 Bulk Product 603e8796 Toys & Games $228.64 237 1.1 90 BULK-c652d0cb
15265 Bulk Product 3e718fdf Home & Garden $345.69 44 2.1 23 BULK-625176b0
15266 Bulk Product 89ac36a5 Books $350.78 165 1.4 77 BULK-21f07412
15267 Bulk Product e7e86beb Electronics $802.41 306 4.7 83 BULK-fd85144e
15268 Bulk Product 04fc9589 Sports & Outdoors $927.65 39 2.1 28 BULK-004f7d16
15269 Bulk Product 876ac946 Clothing $920.74 168 3.0 64 BULK-4c4d3802
15270 Bulk Product 8f5cb732 Toys & Games $414.88 320 0.2 16 BULK-36d7ccd7
15271 Bulk Product 75e4cd47 Clothing $398.36 364 2.9 17 BULK-4a09c52a
15272 Bulk Product baa01173 Electronics $71.37 225 1.6 96 BULK-edce2cc8
15273 Bulk Product f94bd48c Toys & Games $749.52 198 2.1 69 BULK-3d3b8949
15274 Bulk Product c396b096 Toys & Games $186.32 325 0.3 32 BULK-071982cc
15275 Bulk Product 07faeaf2 Home & Garden $512.38 371 4.0 34 BULK-c3e92bbe
15276 Bulk Product 6c8cfdb4 Home & Garden $603.83 127 1.9 43 BULK-78630bc3
15277 Bulk Product ed69c6e5 Home & Garden $85.34 344 2.9 33 BULK-ddfe256c
15278 Bulk Product 4c4c358f Home & Garden $515.14 286 1.3 49 BULK-b2ad5ec2
15279 Bulk Product aebe19e6 Home & Garden $498.41 271 3.8 92 BULK-1aab4fcc
15280 Bulk Product a27d8e61 Books $896.36 349 1.8 27 BULK-2f7d9a52
15281 Bulk Product 29a4854c Toys & Games $52.88 53 2.2 87 BULK-0ea49e7a
15282 Bulk Product 255e61fb Clothing $302.75 204 0.8 18 BULK-5090ad3b
15283 Bulk Product 67ef212e Home & Garden $434.31 477 1.8 37 BULK-354b9c59
15284 Bulk Product 1bb5d3c4 Toys & Games $236.95 96 4.2 31 BULK-9e7e9f96
15285 Bulk Product 50371ec0 Home & Garden $262.06 100 3.2 48 BULK-0ba327a1
15286 Bulk Product 60cc2537 Home & Garden $178.78 166 1.0 7 BULK-36a60f0f
15287 Bulk Product 2bf1c0ab Sports & Outdoors $83.10 384 4.2 26 BULK-3edf9748
15288 Bulk Product 2c674b42 Books $556.66 278 3.5 30 BULK-dfb8cfa1
15289 Bulk Product ffb4c686 Clothing $595.71 244 0.6 24 BULK-bc2b47d3
15290 Bulk Product 007d64fe Toys & Games $979.86 23 3.9 22 BULK-81685af7
15291 Bulk Product 64d53cc2 Toys & Games $780.46 48 1.4 39 BULK-18cb6d2f
15292 Bulk Product a6d89f20 Books $995.59 187 0.3 65 BULK-ed341288
15293 Bulk Product 3f010dd2 Electronics $708.24 124 4.1 79 BULK-9946af73
15294 Bulk Product dbc51369 Clothing $21.05 36 0.5 73 BULK-794f355d
15295 Bulk Product 87b23161 Books $823.97 363 2.2 35 BULK-cf3974c6
15296 Bulk Product 97e1136b Sports & Outdoors $501.23 216 0.0 97 BULK-68e87ac0
15297 Bulk Product 567535c6 Sports & Outdoors $492.51 343 1.4 14 BULK-9d1975e1
15298 Bulk Product 39fdc905 Clothing $491.32 271 4.6 42 BULK-c1c60028
15299 Bulk Product 78415387 Clothing $821.45 50 1.2 71 BULK-df0605d6
15300 Bulk Product 9a95f0e4 Sports & Outdoors $131.84 230 4.8 82 BULK-02916bd4
15301 Bulk Product b62ad1dd Sports & Outdoors $218.04 214 1.5 13 BULK-dce4049c
15302 Bulk Product b410523f Home & Garden $532.94 442 4.4 37 BULK-d543b4eb
15303 Bulk Product faf24a69 Electronics $786.09 150 1.8 59 BULK-f598bfa0
15304 Bulk Product f3d1db30 Electronics $596.44 89 1.5 28 BULK-47a4c836
15305 Bulk Product b40b8433 Electronics $122.02 440 1.6 14 BULK-9ba305d7
15306 Bulk Product daf3ea89 Clothing $657.70 222 2.1 1 BULK-1a924021
15307 Bulk Product 636e9722 Books $886.56 340 2.9 99 BULK-cd1e1f26
15308 Bulk Product 9997936f Home & Garden $885.78 481 1.1 47 BULK-59756d10
15309 Bulk Product 683d6e29 Clothing $532.63 278 2.4 45 BULK-fb1b24cf
Implementation Code
// Efficient pagination with Skip and Take
public async Task<PaginatedResult<DemoProduct>> GetPaginatedProductsAsync(int page, int pageSize)
{
    // Get total count (cached if possible)
    var totalCount = await _context.DemoProducts.CountAsync(p => p.IsActive);
    
    // Get page of results
    var items = await _context.DemoProducts
        .Where(p => p.IsActive)
        .OrderBy(p => p.Id) // Important: Must have ORDER BY for consistent paging
        .Skip((page - 1) * pageSize) // OFFSET in SQL
        .Take(pageSize) // FETCH NEXT in SQL
        .AsNoTracking() // No tracking needed for read-only
        .ToListAsync();

    return new PaginatedResult<DemoProduct>
    {
        Items = items,
        TotalCount = totalCount,
        Page = page,
        PageSize = pageSize
    };
}
Pagination Best Practices
  • Always use OrderBy: Skip/Take require stable sorting for consistent results
  • Use AsNoTracking(): Pagination queries are typically read-only
  • Consider caching: Cache total count if dataset changes infrequently
  • Limit max page size: Prevent users from requesting too many records at once
  • Use indexed columns: Ensure ORDER BY columns are indexed for performance