Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

13 ms

Page Size

50

Current Page

276 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 276 Results Showing 13751 - 13800 of 24441

ID Name Category Price Stock Rating Reviews SKU
14310 Bulk Product 2dac6536 Sports & Outdoors $353.84 448 1.6 38 BULK-8112921f
14311 Bulk Product 5c61c718 Electronics $441.71 28 0.7 56 BULK-2edcbb00
14312 Bulk Product 0bf1d8ed Sports & Outdoors $327.90 31 1.6 96 BULK-b4b098a8
14313 Bulk Product 12cc7008 Home & Garden $889.82 331 3.9 67 BULK-2f3300b0
14314 Bulk Product c1983d4d Home & Garden $568.28 277 4.3 64 BULK-f3204830
14315 Bulk Product 2981d1e8 Sports & Outdoors $482.45 36 3.8 31 BULK-9532f564
14316 Bulk Product f5c730d1 Toys & Games $578.54 230 2.5 18 BULK-92571389
14317 Bulk Product 7399f352 Toys & Games $549.57 478 4.9 9 BULK-9e8bcced
14318 Bulk Product b1aba29e Electronics $739.30 465 1.2 69 BULK-8ce770b4
14319 Bulk Product 3ccaf3c5 Home & Garden $344.92 469 0.5 43 BULK-35c64cc6
14320 Bulk Product df3c3a1f Electronics $852.41 19 2.0 25 BULK-c5b6f4e4
14321 Bulk Product dd2888c9 Sports & Outdoors $445.06 371 2.8 87 BULK-167525dd
14322 Bulk Product 3f8024c2 Home & Garden $76.98 150 0.3 34 BULK-7eb66d64
14323 Bulk Product 83462046 Home & Garden $26.68 456 4.0 2 BULK-ffb3b600
14324 Bulk Product 9237a7db Home & Garden $251.20 296 0.2 90 BULK-23a0fcf2
14325 Bulk Product c2f19459 Clothing $965.42 193 4.6 80 BULK-f82a33b5
14326 Bulk Product 28919c83 Books $140.35 100 2.9 50 BULK-200e1d08
14327 Bulk Product cd3ac135 Electronics $857.15 433 4.7 4 BULK-eff6f532
14328 Bulk Product 28dd5d0e Books $209.05 53 2.6 14 BULK-1f73f622
14329 Bulk Product 2e138736 Toys & Games $923.93 436 1.6 45 BULK-23a34831
14330 Bulk Product 79fb51ab Electronics $106.15 317 2.6 57 BULK-131fd7f2
14331 Bulk Product d509047e Home & Garden $14.84 1 0.3 53 BULK-c240fb63
14332 Bulk Product 4e62a670 Books $166.33 203 2.9 86 BULK-4b7a7880
14333 Bulk Product 8723e606 Home & Garden $497.25 76 4.0 1 BULK-92852b43
14334 Bulk Product 956bf2d1 Toys & Games $838.51 464 3.3 32 BULK-8bbd6a2d
14335 Bulk Product a3aac58f Sports & Outdoors $694.50 268 0.3 62 BULK-0a45b798
14336 Bulk Product 89330a05 Home & Garden $134.36 289 3.1 17 BULK-00c62525
14337 Bulk Product d3e75388 Clothing $633.73 332 3.4 13 BULK-47cecea6
14338 Bulk Product 3c73d183 Sports & Outdoors $81.19 170 3.2 1 BULK-d4ce8094
14339 Bulk Product b9a028c6 Toys & Games $593.31 75 0.8 97 BULK-cee64414
14340 Bulk Product de48421c Clothing $739.76 293 0.7 71 BULK-0ecc802c
14341 Bulk Product 23543e4c Clothing $264.20 181 4.2 16 BULK-e2980c45
14342 Bulk Product 5a9c651a Books $398.41 401 1.2 25 BULK-a16646be
14343 Bulk Product 2f282c0f Toys & Games $181.30 391 2.4 93 BULK-c0591823
14344 Bulk Product 095ecb83 Clothing $76.98 122 0.5 17 BULK-23cd4360
14345 Bulk Product ea0ed0af Clothing $543.38 40 3.0 61 BULK-02f9957d
14346 Bulk Product 8780906f Sports & Outdoors $78.35 374 3.9 38 BULK-5ebd5cdd
14347 Bulk Product a5bca5e9 Toys & Games $400.59 222 0.7 72 BULK-42437116
14348 Bulk Product 33a45da0 Books $127.61 98 1.5 49 BULK-05e6fc71
14349 Bulk Product 0f8b3eed Books $990.52 228 3.2 41 BULK-9f759cac
14350 Bulk Product a5617437 Toys & Games $22.19 175 1.7 37 BULK-aa809e5a
14351 Bulk Product 9b6dbc16 Books $608.86 230 2.7 35 BULK-6efc1690
14352 Bulk Product 61326b4c Home & Garden $487.34 444 3.2 17 BULK-0a1af15c
14353 Bulk Product 9048a59a Books $867.53 147 4.6 9 BULK-504134e5
14354 Bulk Product e61d68b9 Books $521.85 9 1.5 55 BULK-6e0ffb8e
14355 Bulk Product 6a3ee23e Home & Garden $227.62 402 4.0 97 BULK-1212e1d5
14356 Bulk Product 8dc30a4b Books $942.34 184 3.1 52 BULK-5b907dcc
14357 Bulk Product e25bc228 Electronics $467.13 192 2.9 97 BULK-215321ec
14358 Bulk Product 1aa5fec4 Clothing $336.56 11 3.0 3 BULK-a8a522de
14359 Bulk Product 8cdf2640 Books $601.71 2 2.5 64 BULK-5d9856f3
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