Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

89 ms

Page Size

50

Current Page

388 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 388 Results Showing 19351 - 19400 of 24441

ID Name Category Price Stock Rating Reviews SKU
19910 Bulk Product d553097b Books $832.41 25 3.1 56 BULK-8240771b
19911 Bulk Product 7f3907e4 Home & Garden $755.32 331 1.5 91 BULK-546b5644
19912 Bulk Product 49d25e3f Clothing $650.91 258 4.1 6 BULK-9cb1fdc8
19913 Bulk Product 3f06a883 Sports & Outdoors $447.71 490 4.6 82 BULK-0d138266
19914 Bulk Product 12d605e7 Sports & Outdoors $825.25 386 1.7 52 BULK-55cb95e9
19915 Bulk Product 5fa6f0d2 Books $961.42 81 4.1 58 BULK-8e2befe3
19916 Bulk Product e2c39073 Books $322.93 455 3.9 50 BULK-da07fb82
19917 Bulk Product bd5a94dc Books $435.78 402 1.4 44 BULK-9a5d439b
19918 Bulk Product 87c46ecc Electronics $447.77 5 3.9 48 BULK-56ad9ff8
19919 Bulk Product 8a870874 Sports & Outdoors $935.87 164 5.0 96 BULK-89ca2bc9
19920 Bulk Product c5bb8458 Electronics $48.93 115 4.1 20 BULK-29752ece
19921 Bulk Product b43b1a00 Electronics $49.86 476 2.5 87 BULK-843ad966
19922 Bulk Product eba377ff Home & Garden $926.38 493 4.8 4 BULK-820af19e
19923 Bulk Product 0a0fcab2 Home & Garden $108.63 83 1.0 25 BULK-99eb96ad
19924 Bulk Product 331b02a5 Electronics $460.51 31 3.1 77 BULK-24820e4b
19925 Bulk Product 1fd9609e Sports & Outdoors $54.96 254 4.6 8 BULK-cb97d4d8
19926 Bulk Product 45a81c70 Toys & Games $747.24 246 1.7 56 BULK-fd0fd9c6
19927 Bulk Product 4bb9a4ba Books $114.96 415 5.0 2 BULK-d983287f
19928 Bulk Product 1fca1de2 Books $399.86 215 4.6 88 BULK-b8cc22fd
19929 Bulk Product 404929e4 Home & Garden $873.34 495 3.0 27 BULK-34b92d2c
19930 Bulk Product 36e22cbd Books $101.55 485 2.4 48 BULK-bcea5ea1
19931 Bulk Product 7c83d4d7 Electronics $798.13 453 3.6 34 BULK-a979da90
19932 Bulk Product 475ae08d Electronics $498.71 168 1.7 60 BULK-48c71803
19933 Bulk Product d797a794 Toys & Games $738.13 127 2.2 36 BULK-49aea9a0
19934 Bulk Product e802d2a0 Books $443.91 458 1.9 68 BULK-15939c8f
19935 Bulk Product 4e309a40 Books $280.25 311 3.3 87 BULK-73c8d646
19936 Bulk Product 41be9769 Toys & Games $624.05 106 4.3 23 BULK-ddac535e
19937 Bulk Product 0681d2dd Books $255.08 31 0.1 38 BULK-9e463312
19938 Bulk Product 21313efa Sports & Outdoors $620.61 465 0.7 98 BULK-76a94d9c
19939 Bulk Product 3e8fbf9b Toys & Games $333.29 292 3.5 7 BULK-a397f91a
19940 Bulk Product 745cb988 Sports & Outdoors $204.13 338 1.1 76 BULK-ddf6c228
19941 Bulk Product 6c6e8237 Toys & Games $61.44 486 1.1 23 BULK-0d4b3985
19942 Bulk Product dd2c12a1 Clothing $898.80 46 4.1 33 BULK-b1f62e49
19943 Bulk Product c529e9e8 Sports & Outdoors $288.20 474 2.1 28 BULK-0bde4bb7
19944 Bulk Product f7f6e6e5 Home & Garden $237.07 168 2.8 64 BULK-795da64f
19945 Bulk Product df853c4a Books $569.99 124 1.2 17 BULK-ea49620e
19946 Bulk Product c4d22a62 Sports & Outdoors $388.54 120 0.9 88 BULK-fc58e184
19947 Bulk Product a1478c1c Home & Garden $117.87 379 2.6 6 BULK-8b7f4bd5
19948 Bulk Product d65925de Clothing $735.15 47 2.6 31 BULK-b1e1b149
19949 Bulk Product 65d3b055 Sports & Outdoors $309.99 496 2.2 28 BULK-078bb201
19950 Bulk Product 3301c4b0 Books $95.44 59 1.3 3 BULK-d0e8f5ce
19951 Bulk Product 59251112 Electronics $164.51 67 2.1 97 BULK-0453bb41
19952 Bulk Product b143d4a4 Toys & Games $745.85 66 0.0 11 BULK-e75814c1
19953 Bulk Product 063e0bbc Books $649.37 465 3.2 98 BULK-ad1f61c0
19954 Bulk Product 81447ffb Toys & Games $377.87 89 4.3 30 BULK-3a379ec1
19955 Bulk Product cfc40ff3 Toys & Games $241.81 32 2.0 72 BULK-912ad8e8
19956 Bulk Product 06e1c587 Clothing $486.64 408 2.2 10 BULK-2252e271
19957 Bulk Product 62799483 Toys & Games $771.83 420 4.8 44 BULK-c553e171
19958 Bulk Product c57d7258 Home & Garden $379.99 180 0.5 26 BULK-88ce00c2
19959 Bulk Product 7d01b02e Electronics $533.18 256 3.3 82 BULK-f1a3aaf3
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