Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

15 ms

Page Size

50

Current Page

439 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 439 Results Showing 21901 - 21950 of 24441

ID Name Category Price Stock Rating Reviews SKU
22460 Bulk Product 0a944862 Toys & Games $157.26 169 2.2 70 BULK-8913a3e2
22461 Bulk Product 661e6c6b Books $428.63 483 1.1 91 BULK-e63d0d99
22462 Bulk Product a732a624 Electronics $181.64 475 4.9 55 BULK-6500794c
22463 Bulk Product cf650fbb Clothing $93.56 50 0.5 12 BULK-ed92327c
22464 Bulk Product cd3c845c Books $169.94 143 0.3 91 BULK-46b78746
22465 Bulk Product fe864817 Clothing $246.23 329 0.6 98 BULK-c9bb98c0
22466 Bulk Product a3b15760 Electronics $253.59 457 1.6 36 BULK-2f1b1792
22467 Bulk Product c8ff6d75 Clothing $834.73 8 0.0 92 BULK-5b1ecd11
22468 Bulk Product e670ee2f Sports & Outdoors $992.08 426 0.5 63 BULK-3dbd93bc
22469 Bulk Product 8f42b5f5 Sports & Outdoors $102.46 199 0.4 44 BULK-f1005505
22470 Bulk Product fcc147c2 Sports & Outdoors $351.27 91 4.3 33 BULK-6d6e00db
22471 Bulk Product d8dbec45 Toys & Games $325.83 467 0.6 16 BULK-6d9d1609
22472 Bulk Product 14ffc4c2 Books $968.28 201 1.3 66 BULK-b7a49469
22473 Bulk Product 6195c0fa Sports & Outdoors $858.96 418 4.3 75 BULK-8f8ecbbe
22474 Bulk Product cab71947 Books $569.68 372 2.2 50 BULK-8ff4186a
22475 Bulk Product 9a9bbb87 Books $338.03 427 2.4 15 BULK-4b5938e4
22476 Bulk Product 12ed070a Sports & Outdoors $79.14 165 3.1 14 BULK-d2886b51
22477 Bulk Product 5797f19c Sports & Outdoors $146.58 373 4.0 63 BULK-87ae10b8
22478 Bulk Product 07eab261 Books $567.42 341 4.4 99 BULK-218e05d4
22479 Bulk Product a4ad83fe Sports & Outdoors $644.00 175 2.7 40 BULK-148bf691
22480 Bulk Product b6ce691b Electronics $428.92 75 2.1 74 BULK-ad997565
22481 Bulk Product efc4e516 Electronics $119.33 161 4.9 8 BULK-b6f3f3ef
22482 Bulk Product f6196851 Sports & Outdoors $385.41 422 0.7 26 BULK-f23b91c3
22483 Bulk Product 53bb40c3 Sports & Outdoors $419.14 30 3.2 73 BULK-d9c33fe0
22484 Bulk Product 6739661a Clothing $965.12 183 1.8 60 BULK-b169dbcc
22485 Bulk Product 0510fe14 Home & Garden $1,000.51 309 3.3 44 BULK-c73af304
22486 Bulk Product c4449c6e Electronics $753.02 139 0.7 22 BULK-5c844d1a
22487 Bulk Product 812f8904 Books $979.88 251 4.4 11 BULK-91442d45
22488 Bulk Product aee5aaae Clothing $330.09 396 3.6 21 BULK-e24b7d00
22489 Bulk Product 26d59c39 Books $528.25 462 4.1 50 BULK-e00dc6d5
22490 Bulk Product 76f1287e Home & Garden $316.46 249 1.1 74 BULK-7de0244f
22491 Bulk Product 0d78d888 Toys & Games $852.05 144 4.9 81 BULK-0da96849
22492 Bulk Product 56c4bbd1 Sports & Outdoors $876.61 311 3.6 38 BULK-2613472f
22493 Bulk Product fe42b422 Clothing $484.92 440 1.8 73 BULK-188c23b5
22494 Bulk Product ad611f71 Electronics $696.12 74 1.0 9 BULK-964b2a9b
22495 Bulk Product 55e46121 Books $531.16 210 3.1 27 BULK-a3515547
22496 Bulk Product a77d60dd Toys & Games $919.74 410 4.8 36 BULK-4cd33d2f
22497 Bulk Product 637dc159 Sports & Outdoors $735.44 457 3.4 48 BULK-8999c919
22498 Bulk Product 061a6f24 Toys & Games $178.83 497 3.6 95 BULK-5967d761
22499 Bulk Product 48a69d22 Books $465.93 13 3.5 78 BULK-9d3b69ff
22500 Bulk Product c81bb476 Clothing $74.89 161 2.4 1 BULK-fb8109d3
22501 Bulk Product 4ad8820f Books $558.31 205 3.2 77 BULK-d055322d
22502 Bulk Product 93a1b8a3 Toys & Games $905.39 30 1.2 66 BULK-8f13f741
22503 Bulk Product 9479ad04 Toys & Games $466.13 55 1.4 93 BULK-13a1f260
22504 Bulk Product de03f2b5 Sports & Outdoors $905.47 27 1.8 31 BULK-26784ee1
22505 Bulk Product 9d64e144 Toys & Games $650.72 49 4.7 79 BULK-bae2fc55
22506 Bulk Product 49a83c49 Books $988.00 159 3.8 62 BULK-dc6232aa
22507 Bulk Product 26d5a42a Clothing $939.70 155 3.3 7 BULK-8f9afd0f
22508 Bulk Product ed31149a Electronics $841.47 394 1.1 10 BULK-b071a21b
22509 Bulk Product 741f4454 Books $945.58 485 0.3 69 BULK-01d80ee4
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