Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

43 ms

Page Size

50

Current Page

284 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 284 Results Showing 14151 - 14200 of 24441

ID Name Category Price Stock Rating Reviews SKU
14710 Bulk Product 2a3c2777 Sports & Outdoors $830.84 45 0.4 63 BULK-c546db20
14711 Bulk Product 12977179 Sports & Outdoors $152.29 98 0.5 93 BULK-2014d5f9
14712 Bulk Product 9f0b5d93 Books $844.19 401 1.4 69 BULK-fcec8b51
14713 Bulk Product 8c91dd71 Books $961.74 459 1.8 54 BULK-799a57f8
14714 Bulk Product 7ca6f653 Home & Garden $544.96 280 4.5 71 BULK-2ab00c6e
14715 Bulk Product 42e47ac5 Electronics $127.30 155 1.1 22 BULK-63fd7d87
14716 Bulk Product 2fc3af54 Clothing $605.49 343 0.1 70 BULK-d7894916
14717 Bulk Product 117995ec Home & Garden $146.66 110 2.2 82 BULK-fa56afde
14718 Bulk Product 40a570a9 Clothing $573.07 24 2.1 55 BULK-8e6c4701
14719 Bulk Product d91d5bb2 Home & Garden $186.97 18 0.2 27 BULK-9c5d1e2b
14720 Bulk Product f3324795 Home & Garden $245.76 279 3.7 46 BULK-a19bbdd2
14721 Bulk Product 27ad7cf7 Home & Garden $207.45 313 0.5 49 BULK-35106cd4
14722 Bulk Product 8e7bf0fb Books $734.86 458 2.3 37 BULK-42889131
14723 Bulk Product 6663aabc Home & Garden $468.39 116 1.3 91 BULK-603a415d
14724 Bulk Product a7803412 Books $364.65 335 3.8 22 BULK-c6db263a
14725 Bulk Product 1a14044d Sports & Outdoors $116.41 109 2.1 45 BULK-d0226918
14726 Bulk Product 6233053f Clothing $489.30 372 4.2 12 BULK-63b510d2
14727 Bulk Product a9603b8a Home & Garden $546.71 60 3.4 71 BULK-00fd1bb4
14728 Bulk Product e4b64839 Toys & Games $999.62 7 0.7 72 BULK-dcbc0a61
14729 Bulk Product c2b9e6ed Home & Garden $536.62 271 3.1 20 BULK-1c1f74e7
14730 Bulk Product 43821dab Toys & Games $321.12 71 1.4 34 BULK-8915dfa8
14731 Bulk Product 1b0dd9bb Books $77.99 371 4.9 6 BULK-03f8c839
14732 Bulk Product 3d0fbe4f Sports & Outdoors $100.73 470 3.5 18 BULK-f046333f
14733 Bulk Product bcab2379 Home & Garden $504.30 421 3.3 27 BULK-2b317a86
14734 Bulk Product 5ef87bfc Electronics $508.70 187 4.5 4 BULK-81cb84bf
14735 Bulk Product 1ffb165d Electronics $334.53 160 1.8 8 BULK-2c57dded
14736 Bulk Product 239a9f9f Books $148.96 285 4.8 69 BULK-4fb21a8e
14737 Bulk Product 150661eb Sports & Outdoors $617.16 422 2.3 69 BULK-4591513e
14738 Bulk Product db1ade42 Clothing $450.56 490 1.8 66 BULK-e49dfc70
14739 Bulk Product 9cfa5bd6 Toys & Games $581.32 261 4.1 3 BULK-0295ccae
14740 Bulk Product 3e2b2b1b Books $283.12 106 3.8 58 BULK-013149d8
14741 Bulk Product e6363182 Sports & Outdoors $690.56 83 2.2 56 BULK-ae8d7fa2
14742 Bulk Product dc04f688 Clothing $551.26 494 4.5 58 BULK-0a8920dc
14743 Bulk Product 9c419a30 Books $738.91 132 2.5 88 BULK-4fa63b3c
14744 Bulk Product 39db7a86 Toys & Games $112.31 392 4.0 24 BULK-5a7e3522
14745 Bulk Product 61fabbae Toys & Games $793.75 421 2.3 58 BULK-71e2bb02
14746 Bulk Product 2d2b833e Electronics $324.55 430 2.5 21 BULK-82762861
14747 Bulk Product ec97a4b4 Electronics $976.95 280 3.0 16 BULK-678caf8f
14748 Bulk Product 3621691b Electronics $740.47 29 3.9 91 BULK-0d53ccfa
14749 Bulk Product 013baa00 Toys & Games $704.00 89 2.8 74 BULK-c6f2fc3a
14750 Bulk Product 482ace23 Clothing $833.71 443 2.8 98 BULK-81d7c2c0
14751 Bulk Product d6bbd130 Electronics $419.66 290 3.0 99 BULK-3e511aee
14752 Bulk Product 58a067a0 Clothing $597.71 179 3.6 27 BULK-c2aacc04
14753 Bulk Product 113f59aa Electronics $585.54 209 4.3 56 BULK-031f62dc
14754 Bulk Product b29447c3 Books $526.78 242 2.4 53 BULK-1245ef65
14755 Bulk Product 10d19545 Sports & Outdoors $908.08 156 3.9 67 BULK-8c4eb3bf
14756 Bulk Product 4bbe25e1 Toys & Games $68.04 389 1.0 28 BULK-0b348978
14757 Bulk Product d1033c55 Electronics $174.44 293 3.4 56 BULK-72a373bd
14758 Bulk Product 5f745593 Electronics $51.64 413 3.2 42 BULK-f75181cd
14759 Bulk Product 1197bf6f Toys & Games $245.75 139 2.2 91 BULK-687c320a
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