Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

21 ms

Page Size

50

Current Page

188 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 188 Results Showing 9351 - 9400 of 24441

ID Name Category Price Stock Rating Reviews SKU
9910 Bulk Product 797ec522 Electronics $434.20 71 1.3 72 BULK-cfb7b6d5
9911 Bulk Product 3c60ecb8 Sports & Outdoors $354.74 401 4.2 63 BULK-12c26eeb
9912 Bulk Product b5c060f1 Books $245.42 121 2.5 57 BULK-c9e870ec
9913 Bulk Product 8bb720c4 Sports & Outdoors $549.71 386 4.0 56 BULK-40c867ad
9914 Bulk Product 995d4509 Clothing $798.40 298 1.1 28 BULK-8b1bda7c
9915 Bulk Product b44460ba Books $989.30 87 1.1 5 BULK-ae1f9538
9916 Bulk Product e17fb79b Electronics $1,006.23 253 3.4 39 BULK-6d5f4dd6
9917 Bulk Product 5a030437 Sports & Outdoors $852.95 289 1.4 12 BULK-92b5674b
9918 Bulk Product 815458d2 Home & Garden $899.31 109 1.4 17 BULK-7faedec9
9919 Bulk Product 879f746d Toys & Games $573.45 21 2.0 97 BULK-c406f834
9920 Bulk Product dafd158f Electronics $117.03 303 2.9 52 BULK-23c46932
9921 Bulk Product 468ea3e1 Toys & Games $131.57 436 3.7 62 BULK-1554bdeb
9922 Bulk Product 3f684e05 Books $41.24 41 2.0 85 BULK-db92ed34
9923 Bulk Product 8e15a2af Sports & Outdoors $152.70 47 2.6 85 BULK-5c692af6
9924 Bulk Product 66d8a505 Books $915.27 104 2.2 9 BULK-b7bd9d09
9925 Bulk Product 1bc108c2 Toys & Games $1,002.27 94 2.7 43 BULK-9da15ae5
9926 Bulk Product 4e39f8d9 Sports & Outdoors $862.45 285 4.6 54 BULK-d94ace2f
9927 Bulk Product 9dbac92f Electronics $848.80 41 2.9 94 BULK-fc3e4c1f
9928 Bulk Product 01d5db1c Home & Garden $425.87 351 1.0 85 BULK-0a9e169c
9929 Bulk Product a1d2531e Home & Garden $85.61 105 3.5 70 BULK-3ab9c7a5
9930 Bulk Product 91b5a8f3 Toys & Games $497.07 469 3.3 58 BULK-72fe443b
9931 Bulk Product 9da15ae5 Home & Garden $585.86 238 0.8 44 BULK-8e891537
9932 Bulk Product abb6ec0b Electronics $124.86 412 2.7 49 BULK-550e1275
9933 Bulk Product 75b1d6b6 Home & Garden $658.02 262 2.2 38 BULK-aadbb4b8
9934 Bulk Product b1fa7dd1 Toys & Games $569.58 84 0.6 44 BULK-5eaa762b
9935 Bulk Product ff8f0907 Electronics $399.83 23 1.9 71 BULK-c86268c5
9936 Bulk Product fdfcb9cd Toys & Games $316.70 222 1.1 26 BULK-9f961f74
9937 Bulk Product da9f2e7e Home & Garden $947.29 444 3.5 80 BULK-0bf901ff
9938 Bulk Product 869ff8b8 Sports & Outdoors $908.50 195 4.9 65 BULK-23bfbeac
9939 Bulk Product 99bb2bdd Clothing $445.29 241 0.4 98 BULK-33e7f9ca
9940 Bulk Product a9b48166 Toys & Games $750.10 229 0.0 32 BULK-61910d6c
9941 Bulk Product 86a129aa Home & Garden $820.43 446 4.0 74 BULK-95a3ef94
9942 Bulk Product b6c63672 Sports & Outdoors $994.76 401 4.3 42 BULK-7e2676d3
9943 Bulk Product ea6cabef Home & Garden $659.45 17 1.2 87 BULK-4ab947f8
9944 Bulk Product 6095da45 Clothing $664.67 301 3.2 18 BULK-1de27e29
9945 Bulk Product 3b2808b8 Electronics $358.19 1 1.9 80 BULK-50fc5f1e
9946 Bulk Product 03bf063c Home & Garden $131.36 105 0.5 50 BULK-702bae17
9947 Bulk Product 1eb0336a Home & Garden $204.34 209 1.0 96 BULK-d7e6fa2a
9948 Bulk Product 4ee14545 Clothing $676.56 79 4.5 2 BULK-fb67f39d
9949 Bulk Product b197c155 Electronics $943.86 33 4.4 55 BULK-39d9f6c5
9950 Bulk Product cefc6d98 Sports & Outdoors $683.43 310 2.7 84 BULK-7aa17581
9951 Bulk Product 55d4f81c Electronics $344.20 321 1.1 62 BULK-6c3b6686
9952 Bulk Product 02b4d018 Toys & Games $296.16 181 1.3 47 BULK-28422283
9953 Bulk Product 2aad8fb3 Books $587.27 380 1.4 88 BULK-cd031b38
9954 Bulk Product 329a8a0c Clothing $897.05 62 3.1 59 BULK-717b7a56
9955 Bulk Product 748360c8 Electronics $760.85 180 1.5 18 BULK-e23bbe19
9956 Bulk Product f1592174 Sports & Outdoors $884.85 498 3.5 34 BULK-4ba568c4
9957 Bulk Product 4589777d Home & Garden $384.69 235 3.5 7 BULK-a854b30e
9958 Bulk Product 9a29c466 Sports & Outdoors $366.03 153 3.9 26 BULK-24537ffe
9959 Bulk Product 01a75d1a Toys & Games $452.87 321 0.7 49 BULK-390156ed
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