Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

35 ms

Page Size

50

Current Page

393 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 393 Results Showing 19601 - 19650 of 24441

ID Name Category Price Stock Rating Reviews SKU
20160 Bulk Product 56e733b5 Books $719.27 266 4.6 42 BULK-fca746cb
20161 Bulk Product 3084a74f Sports & Outdoors $539.95 180 4.6 17 BULK-9b7598d6
20162 Bulk Product 196fcb39 Electronics $258.42 52 0.3 45 BULK-84ae65ce
20163 Bulk Product f57e22fd Home & Garden $530.05 344 4.3 93 BULK-2736c01a
20164 Bulk Product e328853e Toys & Games $482.20 486 1.4 86 BULK-e9c0da0f
20165 Bulk Product bdf0ac59 Home & Garden $980.79 361 4.6 2 BULK-9a99fe31
20166 Bulk Product 1ac3938c Electronics $778.70 312 4.2 13 BULK-f54c700e
20167 Bulk Product 525f84bb Books $629.09 375 3.1 29 BULK-b1d4b853
20168 Bulk Product 16bc30e9 Home & Garden $679.60 53 2.5 66 BULK-8e39a1a7
20169 Bulk Product 3cc5036a Electronics $120.73 315 1.3 34 BULK-d0ff6ff7
20170 Bulk Product d23dd8f0 Toys & Games $937.37 375 4.6 90 BULK-a8f4969f
20171 Bulk Product 85719566 Home & Garden $172.96 151 1.7 8 BULK-dad80c7f
20172 Bulk Product d62f265d Sports & Outdoors $577.89 104 2.6 79 BULK-623b90c9
20173 Bulk Product b87166e7 Clothing $638.15 479 1.8 79 BULK-b57fbb6d
20174 Bulk Product 5f96c456 Toys & Games $707.42 368 0.6 86 BULK-669b9f5c
20175 Bulk Product dfef0d84 Sports & Outdoors $462.63 315 4.9 18 BULK-4b8fc702
20176 Bulk Product 161eb337 Toys & Games $781.74 244 3.3 89 BULK-f3ca6abb
20177 Bulk Product 404b40c3 Electronics $107.44 108 3.5 27 BULK-eb0749e2
20178 Bulk Product c9056814 Books $764.21 81 0.9 26 BULK-f17bc993
20179 Bulk Product ee339645 Electronics $954.98 434 1.1 65 BULK-e445004e
20180 Bulk Product 9eca2c90 Books $714.48 152 4.3 65 BULK-20fad83b
20181 Bulk Product 708b5c75 Sports & Outdoors $988.35 68 2.1 86 BULK-ede196d5
20182 Bulk Product a0d24121 Books $708.22 306 3.1 69 BULK-c5170c13
20183 Bulk Product 2a466250 Electronics $48.17 322 0.8 23 BULK-b3b59428
20184 Bulk Product e7658c4a Sports & Outdoors $343.38 479 3.3 26 BULK-82c210c0
20185 Bulk Product 57635112 Clothing $327.56 238 2.7 25 BULK-1e67a1ea
20186 Bulk Product ad4ebcfa Sports & Outdoors $825.38 366 1.1 44 BULK-f09e88df
20187 Bulk Product d95ceb75 Books $533.26 89 2.8 44 BULK-c3bd88c8
20188 Bulk Product bfe71140 Clothing $271.43 62 3.1 58 BULK-bd72c71e
20189 Bulk Product 7e69e2d5 Books $282.74 282 1.9 92 BULK-52bff021
20190 Bulk Product 1eb02e7d Toys & Games $490.16 58 3.1 8 BULK-8235c6db
20191 Bulk Product ed9580c5 Clothing $757.58 56 3.3 75 BULK-fde8c10a
20192 Bulk Product 37e23765 Clothing $580.58 394 0.1 54 BULK-f87d3440
20193 Bulk Product fc28ad40 Home & Garden $510.24 485 2.1 17 BULK-bd18e13d
20194 Bulk Product b85f51e0 Electronics $236.70 484 3.9 77 BULK-d811285f
20195 Bulk Product 75a28055 Clothing $677.46 174 4.4 13 BULK-53193f03
20196 Bulk Product 296b50cf Electronics $800.69 277 3.8 39 BULK-7a284c29
20197 Bulk Product 12822724 Home & Garden $270.39 304 1.6 99 BULK-649e7404
20198 Bulk Product 20cf5b68 Toys & Games $979.89 437 3.2 15 BULK-7df0dd93
20199 Bulk Product 918613e8 Books $987.60 198 3.8 13 BULK-fb14854a
20200 Bulk Product d1df325f Clothing $725.98 405 3.9 3 BULK-0fd6db1f
20201 Bulk Product e1545324 Electronics $912.64 375 3.1 11 BULK-7b39a76b
20202 Bulk Product bd8d00f2 Clothing $22.22 376 0.6 94 BULK-01aaf03d
20203 Bulk Product a0de0a56 Sports & Outdoors $707.15 4 2.2 8 BULK-03edd4d0
20204 Bulk Product 12cbaca2 Toys & Games $197.12 115 4.3 18 BULK-c004e06f
20205 Bulk Product b0d89912 Electronics $93.79 436 2.9 55 BULK-0a233561
20206 Bulk Product d095a95c Toys & Games $137.68 381 2.4 88 BULK-b0e237b3
20207 Bulk Product bba509b0 Books $690.61 213 1.5 5 BULK-4b040bfc
20208 Bulk Product 30a370b8 Home & Garden $204.50 261 1.6 57 BULK-17747414
20209 Bulk Product 17dfa336 Toys & Games $309.26 105 4.1 63 BULK-961a6439
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