Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

13 ms

Page Size

50

Current Page

278 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 278 Results Showing 13851 - 13900 of 24441

ID Name Category Price Stock Rating Reviews SKU
14410 Bulk Product cf8bac1f Home & Garden $380.32 104 1.1 0 BULK-e4e3157c
14411 Bulk Product e022c31e Sports & Outdoors $638.93 175 2.4 10 BULK-e33fc341
14412 Bulk Product 190af85f Toys & Games $804.04 269 1.0 46 BULK-e072efdb
14413 Bulk Product 0671d8d9 Books $20.58 168 4.2 87 BULK-e21383a1
14414 Bulk Product 62d0b791 Home & Garden $412.31 297 2.9 87 BULK-7a2d7169
14415 Bulk Product 0e651b94 Sports & Outdoors $15.85 94 4.6 68 BULK-9c00dd0f
14416 Bulk Product 2fe07f34 Clothing $176.87 293 1.6 12 BULK-d1daa9d5
14417 Bulk Product 42011102 Sports & Outdoors $609.70 74 0.4 12 BULK-f3a4426a
14418 Bulk Product a92c837e Books $53.28 1 0.9 1 BULK-15ec31a4
14419 Bulk Product 224589e4 Home & Garden $96.33 69 3.1 89 BULK-fd1d0595
14420 Bulk Product 4caacada Toys & Games $350.68 280 1.8 39 BULK-6e4984da
14421 Bulk Product 19cb3ade Toys & Games $335.32 423 0.3 71 BULK-6fbd40c7
14422 Bulk Product 593387d5 Clothing $420.47 375 1.7 72 BULK-fe0070f3
14423 Bulk Product 011a44b0 Toys & Games $654.31 260 3.9 56 BULK-f233b36c
14424 Bulk Product 14e799a6 Books $191.78 406 2.6 16 BULK-d6363425
14425 Bulk Product 2371f15c Sports & Outdoors $916.69 463 0.6 20 BULK-8ce16d93
14426 Bulk Product e4ae6c93 Books $604.90 387 5.0 46 BULK-4b13a15f
14427 Bulk Product 4fe82750 Clothing $529.56 265 0.4 61 BULK-325f3c59
14428 Bulk Product c8c7a2d6 Sports & Outdoors $999.58 271 1.6 58 BULK-243415d4
14429 Bulk Product 19837790 Electronics $780.15 0 1.5 35 BULK-83bde26f
14430 Bulk Product 6f126079 Clothing $220.86 56 1.2 14 BULK-48d240bb
14431 Bulk Product a40628c1 Clothing $740.46 128 3.4 37 BULK-4024dfb3
14432 Bulk Product 4c079a4a Home & Garden $777.09 82 1.9 4 BULK-fab3316d
14433 Bulk Product 1c9c867b Electronics $604.90 270 2.0 41 BULK-ef24ed17
14434 Bulk Product d366d158 Electronics $867.74 251 0.0 61 BULK-227c8a39
14435 Bulk Product 664c2b19 Books $246.92 474 2.5 47 BULK-4bbcc878
14436 Bulk Product 550314e1 Books $557.36 367 4.3 30 BULK-7d897c48
14437 Bulk Product 96e5e24a Electronics $634.10 109 4.2 48 BULK-4453eee5
14438 Bulk Product 4b415852 Clothing $688.74 454 3.5 29 BULK-0f1ad9bc
14439 Bulk Product e6ad0dd6 Books $668.91 480 0.8 90 BULK-375fe6ea
14440 Bulk Product 6c1d62c3 Home & Garden $401.89 487 3.7 71 BULK-db506fa0
14441 Bulk Product b65334c4 Books $785.72 66 3.3 52 BULK-00769bc3
14442 Bulk Product 45d93a70 Toys & Games $779.43 294 1.3 58 BULK-236f426d
14443 Bulk Product a00b7685 Sports & Outdoors $295.57 255 2.5 72 BULK-fd2281e9
14444 Bulk Product fb742b0d Clothing $547.00 186 0.8 22 BULK-141a62fe
14445 Bulk Product a56a61f4 Toys & Games $594.97 305 3.0 7 BULK-b33c0f6e
14446 Bulk Product 89c8f525 Toys & Games $402.85 445 1.0 21 BULK-b1fcf7f5
14447 Bulk Product e0d23b64 Sports & Outdoors $446.15 14 2.0 11 BULK-067c5363
14448 Bulk Product e1597377 Sports & Outdoors $894.30 351 4.3 41 BULK-56f1448b
14449 Bulk Product 32bf96d5 Books $308.45 352 1.8 47 BULK-fdd4e11f
14450 Bulk Product ff093fd9 Clothing $53.86 329 4.6 41 BULK-f4a18475
14451 Bulk Product eb094f13 Sports & Outdoors $908.55 493 0.8 62 BULK-c5b559b4
14452 Bulk Product a44df668 Sports & Outdoors $222.15 443 0.3 8 BULK-143c7407
14453 Bulk Product d60dc59b Books $987.64 369 3.2 41 BULK-58a617cb
14454 Bulk Product c9f88762 Home & Garden $257.93 75 0.4 82 BULK-937d8b3f
14455 Bulk Product f1139b3e Books $85.86 195 4.9 35 BULK-8e21257b
14456 Bulk Product 4d2f8385 Toys & Games $507.43 259 0.1 26 BULK-3b89d8a0
14457 Bulk Product 630d82af Home & Garden $266.05 421 4.8 91 BULK-9e3567bb
14458 Bulk Product aa70712d Sports & Outdoors $350.53 23 0.2 16 BULK-e3feda82
14459 Bulk Product fb6998c7 Sports & Outdoors $996.98 155 3.9 82 BULK-245145bf
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