Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

15 ms

Page Size

50

Current Page

487 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 487 Results Showing 24301 - 24350 of 24441

ID Name Category Price Stock Rating Reviews SKU
24860 Bulk Product e7c311e8 Sports & Outdoors $203.76 298 2.0 94 BULK-fe9be77e
24861 Bulk Product 6eeb2208 Toys & Games $289.83 215 3.3 91 BULK-e26a72f0
24862 Bulk Product d4ccb5fa Toys & Games $638.29 221 1.7 69 BULK-cc378b8c
24863 Bulk Product 1e0bd201 Sports & Outdoors $852.53 252 1.8 83 BULK-a1b99b48
24864 Bulk Product 01ae3b1b Books $973.33 70 3.2 43 BULK-c329aeea
24865 Bulk Product a1a786c1 Electronics $706.08 394 4.5 91 BULK-be13de9d
24866 Bulk Product 3413da91 Home & Garden $629.80 367 3.8 3 BULK-ee139a43
24867 Bulk Product 9870ae8c Books $430.85 481 3.5 69 BULK-dc9273b4
24868 Bulk Product b19ec2d3 Toys & Games $446.29 53 3.7 69 BULK-281648ab
24869 Bulk Product 7172e0b2 Clothing $541.74 59 2.3 71 BULK-8e1e224e
24870 Bulk Product 0f646ab7 Books $606.73 288 1.1 63 BULK-8b88dc0f
24871 Bulk Product 2fb392e8 Electronics $475.65 296 2.6 8 BULK-993930c3
24872 Bulk Product 9931e89f Home & Garden $14.32 297 2.8 18 BULK-c0264698
24873 Bulk Product 460d2172 Books $977.49 122 3.2 67 BULK-7cfb6c56
24874 Bulk Product 1901be08 Books $400.26 96 1.7 29 BULK-69045eb9
24875 Bulk Product 38fb222e Sports & Outdoors $70.46 15 3.4 9 BULK-e5bec0bd
24876 Bulk Product 89f793ac Electronics $568.93 366 4.4 63 BULK-02a7651a
24877 Bulk Product c0fe3379 Toys & Games $296.75 3 3.2 66 BULK-d105f6b7
24878 Bulk Product e072c858 Toys & Games $698.13 268 4.6 38 BULK-e79c7c10
24879 Bulk Product 43235dab Clothing $117.87 146 0.9 85 BULK-d237a3af
24880 Bulk Product 93f0c263 Sports & Outdoors $976.71 154 2.9 94 BULK-412e5359
24881 Bulk Product 730c95cb Clothing $614.11 353 4.8 94 BULK-7c36b630
24882 Bulk Product c9b357f5 Electronics $427.59 298 1.7 15 BULK-a500b8a7
24883 Bulk Product 1e019fd1 Toys & Games $783.60 312 2.6 80 BULK-10ade88e
24884 Bulk Product e80a3314 Electronics $982.53 397 2.3 15 BULK-03c791bb
24885 Bulk Product 7c208281 Electronics $511.40 19 1.8 71 BULK-46917734
24886 Bulk Product b885f912 Toys & Games $622.38 78 3.5 15 BULK-63e528aa
24887 Bulk Product aa8f0bf3 Home & Garden $506.95 1 2.9 76 BULK-84f88aef
24888 Bulk Product 06694a37 Home & Garden $392.39 173 4.1 76 BULK-ba6c078f
24889 Bulk Product cb72b7ef Clothing $261.98 73 0.0 64 BULK-e2b73fab
24890 Bulk Product 648a255b Electronics $117.03 275 4.0 97 BULK-4880969f
24891 Bulk Product c9f10c5e Books $873.91 307 0.6 3 BULK-d5e29b00
24892 Bulk Product 37830293 Toys & Games $599.91 54 2.4 68 BULK-bcf6d506
24893 Bulk Product 81e9f282 Clothing $885.24 424 4.9 82 BULK-2fa4d963
24894 Bulk Product 9e2552de Home & Garden $640.97 83 4.1 17 BULK-5a07a171
24895 Bulk Product c2fa79dd Sports & Outdoors $884.74 10 4.6 64 BULK-f346440f
24896 Bulk Product bc67e942 Electronics $460.08 409 0.9 3 BULK-5e14591d
24897 Bulk Product c0612917 Home & Garden $227.43 456 2.4 61 BULK-22921362
24898 Bulk Product 4a0f162b Sports & Outdoors $457.71 333 2.8 10 BULK-7fb04123
24899 Bulk Product be2ee416 Home & Garden $812.17 267 2.6 44 BULK-fdea0fa9
24900 Bulk Product 29a44ec2 Home & Garden $62.33 148 3.5 68 BULK-8d768aca
24901 Bulk Product e55c11dc Home & Garden $404.47 294 3.7 42 BULK-27fd7543
24902 Bulk Product 6e9736a6 Books $837.97 398 3.8 92 BULK-01e2bb70
24903 Bulk Product c661fec7 Sports & Outdoors $36.79 358 3.8 34 BULK-262fcff4
24904 Bulk Product 32b800e3 Sports & Outdoors $84.11 105 4.8 50 BULK-04ce65d9
24905 Bulk Product 59156065 Home & Garden $77.00 138 0.3 43 BULK-5f2c2e7c
24906 Bulk Product 11a230dc Home & Garden $650.77 474 1.9 12 BULK-b8b1bc2a
24907 Bulk Product ad38d0ca Books $335.18 419 1.9 87 BULK-1ac7c77c
24908 Bulk Product cf3024ab Books $586.30 90 0.1 91 BULK-a963d86a
24909 Bulk Product bef80398 Books $73.47 87 5.0 53 BULK-188df0c0
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