Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

36 ms

Page Size

50

Current Page

130 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 130 Results Showing 6451 - 6500 of 24441

ID Name Category Price Stock Rating Reviews SKU
7010 Bulk Product 86c17bc5 Toys & Games $574.29 370 4.8 18 BULK-f581d3ee
7011 Bulk Product b616fcab Sports & Outdoors $910.79 484 0.0 25 BULK-a3db3626
7012 Bulk Product d922704b Sports & Outdoors $72.25 76 3.7 80 BULK-f0646268
7013 Bulk Product 6302d26a Sports & Outdoors $322.15 427 0.4 1 BULK-d41932e2
7014 Bulk Product 060208ab Home & Garden $763.47 424 2.3 45 BULK-ffc1a5a0
7015 Bulk Product 3fda7c72 Toys & Games $542.63 117 4.1 81 BULK-6633f61e
7016 Bulk Product 949c03e8 Toys & Games $22.03 36 0.7 97 BULK-a44fecf8
7017 Bulk Product d81b8b3a Electronics $399.63 6 3.9 68 BULK-cee0dfae
7018 Bulk Product 2c1f1bc0 Home & Garden $735.02 405 3.0 62 BULK-be387258
7019 Bulk Product 4b9f04ff Clothing $157.81 248 2.4 48 BULK-d03d84e4
7020 Bulk Product e13d71b8 Sports & Outdoors $30.12 342 2.9 58 BULK-36840425
7021 Bulk Product 89c33c40 Electronics $632.29 80 2.2 22 BULK-f3d41226
7022 Bulk Product ac35a1e0 Home & Garden $212.50 127 4.8 12 BULK-92c365e2
7023 Bulk Product d930a694 Clothing $727.18 324 2.5 62 BULK-84981d8d
7024 Bulk Product 854a2f69 Sports & Outdoors $478.98 15 0.6 37 BULK-c409a243
7025 Bulk Product dcaffdba Electronics $238.90 198 1.9 40 BULK-27273534
7026 Bulk Product 5a8b4b17 Books $711.31 38 0.4 66 BULK-d7e884b1
7027 Bulk Product d74c1969 Books $498.58 284 4.9 99 BULK-14f55f1d
7028 Bulk Product 0d8c8a58 Clothing $476.43 329 3.4 14 BULK-e480bfb1
7029 Bulk Product ceeeb8a0 Toys & Games $428.86 453 4.0 89 BULK-d261553e
7030 Bulk Product 37a7da1c Books $892.87 200 3.8 29 BULK-7c292a70
7031 Bulk Product 356c8b64 Home & Garden $860.31 306 0.2 92 BULK-558bbb44
7032 Bulk Product 6bfa8f93 Clothing $342.81 464 1.0 85 BULK-e2b14c65
7033 Bulk Product 75b2bbe4 Books $443.99 305 2.1 17 BULK-8eda79d4
7034 Bulk Product 4da59218 Electronics $626.96 157 3.9 70 BULK-88ef0985
7035 Bulk Product 093a3953 Books $213.24 324 2.8 84 BULK-5fdc446f
7036 Bulk Product ed66c31b Books $419.98 226 1.5 42 BULK-0ddd26f0
7037 Bulk Product 663aee5d Books $565.39 271 0.4 30 BULK-ce1c2e74
7038 Bulk Product dc1cb2ee Clothing $603.89 107 4.2 72 BULK-b84e01ac
7039 Bulk Product 6055a865 Books $236.18 81 4.0 48 BULK-f9dde938
7040 Bulk Product 813ec8f4 Toys & Games $456.40 178 2.6 75 BULK-e6546eb1
7041 Bulk Product 95eb1dcc Books $886.73 319 1.1 16 BULK-e64ef980
7042 Bulk Product 389efd56 Books $594.21 149 0.2 4 BULK-c182715d
7043 Bulk Product 343325a5 Sports & Outdoors $432.92 67 4.6 99 BULK-d8d1304e
7044 Bulk Product 832b4200 Clothing $132.12 469 2.2 6 BULK-6019b3dc
7045 Bulk Product fd6c1625 Clothing $253.73 430 4.4 70 BULK-add749e2
7046 Bulk Product 0783fbc9 Toys & Games $239.23 31 2.3 83 BULK-3392751e
7047 Bulk Product 08f7ca36 Sports & Outdoors $311.39 347 1.8 71 BULK-8c77cab5
7048 Bulk Product 87f00e1b Toys & Games $62.13 356 0.7 10 BULK-0755872d
7049 Bulk Product f5322b33 Home & Garden $961.71 216 2.5 72 BULK-1a312990
7050 Bulk Product 5a6d4c71 Home & Garden $122.41 183 3.2 94 BULK-fa909d56
7051 Bulk Product 3b70dfbf Clothing $992.77 151 2.5 36 BULK-c7fa95fb
7052 Bulk Product 50bb4456 Sports & Outdoors $84.05 235 0.5 1 BULK-45ceebdd
7053 Bulk Product d6898261 Electronics $88.40 495 4.8 19 BULK-7a8517da
7054 Bulk Product 855e2c5a Sports & Outdoors $750.17 367 5.0 32 BULK-b7e96312
7055 Bulk Product 0e93c343 Home & Garden $288.75 244 4.6 44 BULK-7835eaf1
7056 Bulk Product 168ffde7 Books $126.73 277 0.1 34 BULK-4757423e
7057 Bulk Product fc576b23 Clothing $771.95 197 1.0 28 BULK-877ec87d
7058 Bulk Product a63a4cc6 Electronics $66.72 80 2.8 2 BULK-02bdfe2a
7059 Bulk Product b0068baa Home & Garden $857.58 306 1.9 7 BULK-cc87339e
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