Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

21 ms

Page Size

50

Current Page

414 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 414 Results Showing 20651 - 20700 of 24441

ID Name Category Price Stock Rating Reviews SKU
21210 Bulk Product a5d19941 Toys & Games $433.21 478 2.3 50 BULK-d5c3e9bb
21211 Bulk Product ef5fb561 Clothing $670.95 396 4.1 15 BULK-17308ff0
21212 Bulk Product 103f25c8 Home & Garden $915.15 276 4.9 83 BULK-b7c99d1d
21213 Bulk Product e51f3610 Clothing $578.57 482 4.1 99 BULK-ad14b3e6
21214 Bulk Product 4015749f Home & Garden $105.74 346 4.1 68 BULK-0e8b9a0d
21215 Bulk Product d1c9e0b7 Books $931.30 432 2.8 94 BULK-c7b446de
21216 Bulk Product 0231ad1a Books $596.84 451 1.3 21 BULK-58f7fa1a
21217 Bulk Product 423588a4 Toys & Games $181.75 199 3.4 39 BULK-2ec1a520
21218 Bulk Product 27af1c93 Books $734.37 116 1.6 49 BULK-38d86578
21219 Bulk Product 0941dca9 Toys & Games $634.85 248 0.5 25 BULK-ea3a13b2
21220 Bulk Product 2efdbad5 Home & Garden $284.28 100 3.4 1 BULK-dfff91a4
21221 Bulk Product 9b834e6b Sports & Outdoors $438.08 176 0.1 65 BULK-532f0d2d
21222 Bulk Product 1e8dfbc3 Home & Garden $654.02 247 2.5 1 BULK-235866f1
21223 Bulk Product 5a603922 Toys & Games $297.42 379 4.4 86 BULK-6fa7edcb
21224 Bulk Product 219f452d Toys & Games $550.01 459 3.2 79 BULK-0edb06a0
21225 Bulk Product 8703d0a0 Toys & Games $829.95 110 1.7 61 BULK-d181e134
21226 Bulk Product 9cf1d656 Books $598.92 305 3.7 33 BULK-80816320
21227 Bulk Product d5c14c8a Sports & Outdoors $913.53 389 2.2 94 BULK-16f6c623
21228 Bulk Product 87654c7f Clothing $162.85 34 0.5 63 BULK-b52c19a5
21229 Bulk Product efc1ec21 Toys & Games $744.29 466 0.8 42 BULK-4602d43c
21230 Bulk Product d6fa859e Electronics $458.50 448 1.4 8 BULK-bba72ac8
21231 Bulk Product 76d97037 Books $355.54 488 1.0 99 BULK-3834eb22
21232 Bulk Product ffb53f64 Electronics $691.60 417 3.4 77 BULK-9da67bc1
21233 Bulk Product a6b7a9b3 Toys & Games $266.69 88 1.2 17 BULK-99a893c2
21234 Bulk Product 4e403866 Toys & Games $815.16 414 3.2 55 BULK-39895198
21235 Bulk Product b6fe14d3 Electronics $777.93 56 1.4 32 BULK-1c32c7e1
21236 Bulk Product cdb38a01 Toys & Games $380.83 263 3.2 3 BULK-761aef19
21237 Bulk Product 92380105 Home & Garden $345.58 434 0.9 78 BULK-ffd23d17
21238 Bulk Product 2f07bf13 Clothing $228.20 38 1.5 28 BULK-b65c0244
21239 Bulk Product ead2ef33 Home & Garden $526.88 285 3.3 57 BULK-18c0ccc4
21240 Bulk Product 85f00da2 Electronics $691.43 74 0.7 61 BULK-e2e71b0c
21241 Bulk Product f9a4154c Books $984.56 142 4.0 28 BULK-15b745c5
21242 Bulk Product d7886eec Electronics $164.73 79 2.5 87 BULK-4a27fa79
21243 Bulk Product 6870df96 Books $41.22 330 2.7 70 BULK-44f26174
21244 Bulk Product 91435bc0 Clothing $961.05 265 2.4 89 BULK-5e12b935
21245 Bulk Product 9057a481 Home & Garden $429.57 43 0.3 21 BULK-0912f4ca
21246 Bulk Product 358b74cc Toys & Games $732.03 272 2.6 12 BULK-568a3363
21247 Bulk Product 27cc893c Clothing $312.31 297 3.8 62 BULK-43ffdd42
21248 Bulk Product 203a5e61 Home & Garden $368.33 167 4.2 52 BULK-9cec6730
21249 Bulk Product c38c994a Electronics $529.91 218 3.4 27 BULK-0146f751
21250 Bulk Product 722a1931 Home & Garden $17.26 347 1.5 30 BULK-37c17de9
21251 Bulk Product a8674d30 Books $786.81 98 2.1 76 BULK-f5b90ece
21252 Bulk Product 03ae5a8a Home & Garden $420.23 263 4.6 66 BULK-bfcb87c9
21253 Bulk Product 8465964a Clothing $426.90 212 3.2 49 BULK-45a7f6cf
21254 Bulk Product d560e46f Home & Garden $176.98 258 3.1 66 BULK-e4e27564
21255 Bulk Product ca607a8b Electronics $711.93 47 4.4 51 BULK-fa69772e
21256 Bulk Product 0412ec5e Electronics $417.96 425 0.8 68 BULK-c53109da
21257 Bulk Product 722273d8 Clothing $310.07 301 3.3 31 BULK-04c2da77
21258 Bulk Product ab70221d Electronics $315.18 213 2.0 31 BULK-b5e12ed6
21259 Bulk Product aa5d8196 Toys & Games $545.26 368 1.0 96 BULK-3d50fddb
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