Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

11 ms

Page Size

50

Current Page

215 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 215 Results Showing 10701 - 10750 of 24441

ID Name Category Price Stock Rating Reviews SKU
11260 Bulk Product 091a8d30 Books $119.61 128 4.0 90 BULK-5591bef2
11261 Bulk Product 9aae7701 Books $747.79 294 0.4 29 BULK-31ac6bd7
11262 Bulk Product 9623f77c Books $660.92 69 1.3 48 BULK-9c0bcb6c
11263 Bulk Product d624c7b0 Books $298.01 160 0.8 97 BULK-f4eb1733
11264 Bulk Product 99707142 Clothing $360.48 361 0.2 90 BULK-291b97b5
11265 Bulk Product 22fc9b53 Clothing $229.37 397 2.5 57 BULK-b5db0de3
11266 Bulk Product 379951ac Toys & Games $639.05 481 4.6 51 BULK-e36e4e49
11267 Bulk Product 0f604b11 Home & Garden $894.31 65 4.2 98 BULK-b30c6fd4
11268 Bulk Product a692985d Home & Garden $569.10 342 0.8 88 BULK-e15e88c9
11269 Bulk Product c73778e0 Home & Garden $264.13 155 4.6 93 BULK-32ab552b
11270 Bulk Product 08f95aa1 Home & Garden $948.13 272 1.5 29 BULK-7a58f9d6
11271 Bulk Product a1707a66 Toys & Games $155.18 352 2.6 47 BULK-16b5ed70
11272 Bulk Product e9bf68f8 Toys & Games $340.93 219 0.8 8 BULK-e10d8965
11273 Bulk Product 62869a5e Toys & Games $867.04 312 3.1 71 BULK-53d4bf36
11274 Bulk Product 86d41bbd Books $987.73 37 2.6 8 BULK-40a78bad
11275 Bulk Product e5ea2884 Sports & Outdoors $204.81 482 0.8 0 BULK-57e59e23
11276 Bulk Product 9d1a508e Electronics $814.26 361 2.7 52 BULK-e581b7b8
11277 Bulk Product 3e5b8214 Electronics $283.28 320 0.8 3 BULK-5bd7f61b
11278 Bulk Product 2efe1d3a Toys & Games $741.87 423 4.6 57 BULK-d683a876
11279 Bulk Product 385991f1 Clothing $935.49 27 4.3 78 BULK-fa503e45
11280 Bulk Product 040c2efe Electronics $608.81 493 1.6 33 BULK-d74dd5a0
11281 Bulk Product 13120799 Books $286.27 119 4.3 2 BULK-98c69fa8
11282 Bulk Product 10734b2a Books $552.90 483 4.6 70 BULK-4fab269b
11283 Bulk Product eb5f56be Home & Garden $719.11 391 3.6 77 BULK-831a9bb9
11284 Bulk Product eac3bf6f Home & Garden $287.69 413 2.0 80 BULK-8c1f5cb4
11285 Bulk Product 53ba9cc9 Clothing $136.87 395 3.8 53 BULK-a8ac26e8
11286 Bulk Product f5b69bdd Home & Garden $89.96 37 1.9 63 BULK-723227f3
11287 Bulk Product 8fd37b2c Clothing $355.26 17 0.9 2 BULK-cc18988b
11288 Bulk Product 7dc3fbae Toys & Games $1,009.93 416 4.4 84 BULK-d9fd61fa
11289 Bulk Product d68290b9 Toys & Games $339.76 22 1.0 81 BULK-9dcfb8fd
11290 Bulk Product 84dbe2af Books $34.89 74 1.5 67 BULK-551248cb
11291 Bulk Product a94536df Electronics $228.34 149 0.1 4 BULK-a6dc2d30
11292 Bulk Product 41f8eabf Clothing $713.88 160 3.0 36 BULK-c4f82762
11293 Bulk Product df1b0881 Home & Garden $494.67 60 0.7 96 BULK-40022cea
11294 Bulk Product ec09664e Sports & Outdoors $553.55 359 4.2 65 BULK-c567a464
11295 Bulk Product 842d97a2 Books $341.38 219 4.4 44 BULK-2de01958
11296 Bulk Product dffd2a6c Electronics $786.61 380 4.8 73 BULK-54aed59e
11297 Bulk Product 08f8149b Toys & Games $123.80 357 1.8 94 BULK-9287edca
11298 Bulk Product f21125b2 Toys & Games $19.98 389 4.7 95 BULK-eacc1a06
11299 Bulk Product 305c788e Toys & Games $900.98 171 0.7 50 BULK-89dd80bb
11300 Bulk Product edfe3fe9 Clothing $74.20 413 3.9 94 BULK-fb3bd5c5
11301 Bulk Product e90743ca Home & Garden $118.94 246 2.0 90 BULK-cbdcfe22
11302 Bulk Product 25fa6f21 Electronics $61.62 169 4.4 59 BULK-b78318c3
11303 Bulk Product f5309f22 Home & Garden $522.54 276 1.8 32 BULK-dc67989e
11304 Bulk Product 6443dc87 Sports & Outdoors $617.50 185 4.3 31 BULK-13d161e4
11305 Bulk Product 3819cc0c Books $736.09 288 0.3 59 BULK-2c1a92b6
11306 Bulk Product 0a362230 Electronics $547.77 485 4.1 54 BULK-7ee1b201
11307 Bulk Product 5abc8eb1 Home & Garden $528.14 258 3.8 19 BULK-f0998060
11308 Bulk Product 9144cb58 Clothing $800.73 484 4.5 95 BULK-117a8a2c
11309 Bulk Product bda4b5d9 Clothing $976.85 333 4.1 67 BULK-dc9d6773
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