Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

41 ms

Page Size

50

Current Page

257 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 257 Results Showing 12801 - 12850 of 24441

ID Name Category Price Stock Rating Reviews SKU
13360 Bulk Product 1df9dfd9 Clothing $732.90 52 3.0 55 BULK-5134b3d1
13361 Bulk Product 6a5c26d9 Books $405.72 33 4.7 92 BULK-37968515
13362 Bulk Product 7f9b3fad Home & Garden $790.02 97 1.7 97 BULK-5658e55c
13363 Bulk Product a898fed4 Electronics $651.17 147 4.5 49 BULK-a6b633ee
13364 Bulk Product 6373f736 Home & Garden $63.68 45 2.1 54 BULK-8ac0c125
13365 Bulk Product 491a84bb Home & Garden $777.83 378 1.2 36 BULK-3420ca0e
13366 Bulk Product 00fb8744 Sports & Outdoors $945.28 476 0.9 9 BULK-781dae20
13367 Bulk Product c26eae84 Home & Garden $50.97 244 0.1 42 BULK-8ce0b243
13368 Bulk Product b6129c00 Clothing $160.44 106 1.9 95 BULK-61a549bb
13369 Bulk Product 6364213a Electronics $104.77 253 3.7 67 BULK-43175b6f
13370 Bulk Product 66a64270 Toys & Games $136.76 85 3.4 69 BULK-8baf2a02
13371 Bulk Product bf6411ba Sports & Outdoors $18.57 164 3.5 69 BULK-56656c6d
13372 Bulk Product 87e1c81d Sports & Outdoors $274.03 382 1.5 22 BULK-526b00f9
13373 Bulk Product ef54ee9e Clothing $787.60 131 3.7 65 BULK-683581af
13374 Bulk Product 0ea631b1 Electronics $209.14 369 3.7 23 BULK-8e5e20c7
13375 Bulk Product 437b01a9 Books $53.17 291 4.1 78 BULK-06950725
13376 Bulk Product f8533ad5 Electronics $725.50 123 2.5 54 BULK-27f0a4b8
13377 Bulk Product 2d0a8b6d Home & Garden $717.12 166 1.3 99 BULK-bbc73ab4
13378 Bulk Product 99e69beb Toys & Games $401.20 107 0.1 56 BULK-f6d3be53
13379 Bulk Product 690d14cf Books $587.80 93 0.9 74 BULK-a9ecff77
13380 Bulk Product 15d1938b Sports & Outdoors $570.73 54 1.3 17 BULK-0f927677
13381 Bulk Product af2705f7 Clothing $414.67 411 3.1 64 BULK-9351fc08
13382 Bulk Product 21c61568 Books $111.33 231 3.1 96 BULK-e8a94e1b
13383 Bulk Product 2ad9b602 Clothing $484.64 154 4.7 51 BULK-52812e89
13384 Bulk Product 1b51cdce Books $405.21 231 0.5 5 BULK-9d739bd4
13385 Bulk Product 77d4828f Electronics $345.77 456 0.4 56 BULK-730d4d10
13386 Bulk Product 6dd077eb Books $581.24 404 0.6 49 BULK-b9121b4d
13387 Bulk Product 37b834ae Books $823.98 129 0.2 68 BULK-108101c5
13388 Bulk Product 2eb1c3e8 Toys & Games $826.64 104 0.6 66 BULK-d1f27a67
13389 Bulk Product 4d005cbf Electronics $368.47 220 0.1 28 BULK-31237610
13390 Bulk Product 6ff799aa Toys & Games $636.00 79 0.8 44 BULK-c93969ac
13391 Bulk Product e02deec1 Toys & Games $249.64 136 0.7 93 BULK-4db702d7
13392 Bulk Product 650efba8 Books $318.18 75 4.5 24 BULK-1c6b4286
13393 Bulk Product 9df7e297 Toys & Games $375.62 418 2.6 64 BULK-2dcfa9c3
13394 Bulk Product 0fbaaf73 Electronics $388.57 226 3.4 70 BULK-9a3ab9c8
13395 Bulk Product 8af7fbda Toys & Games $303.61 339 4.0 58 BULK-7b40607e
13396 Bulk Product d342e6a7 Sports & Outdoors $575.28 169 3.9 16 BULK-0457ad13
13397 Bulk Product e819b548 Toys & Games $815.23 40 4.4 46 BULK-e2e8466a
13398 Bulk Product 6047856a Toys & Games $864.22 456 3.3 46 BULK-7faeb637
13399 Bulk Product faba39b2 Home & Garden $775.06 5 2.6 25 BULK-a9bc00ba
13400 Bulk Product 622efa96 Clothing $122.70 0 1.8 47 BULK-e918199d
13401 Bulk Product b9501480 Electronics $968.77 263 0.8 76 BULK-f456ed92
13402 Bulk Product 2c1fe6ac Toys & Games $216.38 497 2.6 52 BULK-31932b1d
13403 Bulk Product 583674c6 Home & Garden $617.66 479 3.7 59 BULK-e5ee7df9
13404 Bulk Product 0d2a4cb9 Electronics $342.87 309 1.5 7 BULK-3102ed50
13405 Bulk Product b6abc2d6 Sports & Outdoors $195.60 117 1.5 64 BULK-bd570e5a
13406 Bulk Product 73aa1544 Clothing $659.36 152 0.8 38 BULK-1139754b
13407 Bulk Product 6b7de62b Home & Garden $329.86 285 3.5 91 BULK-836553f1
13408 Bulk Product 2cc7deb5 Home & Garden $713.48 389 1.3 37 BULK-cbe9150d
13409 Bulk Product 5f71383e Sports & Outdoors $710.12 23 0.1 11 BULK-8f03fb34
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