Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

10 ms

Page Size

50

Current Page

162 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 162 Results Showing 8051 - 8100 of 24441

ID Name Category Price Stock Rating Reviews SKU
8610 Bulk Product b800aca7 Toys & Games $926.37 263 3.7 43 BULK-472d4f51
8611 Bulk Product 6c614784 Electronics $326.38 105 0.2 44 BULK-dd4ebe3e
8612 Bulk Product a4832d07 Electronics $502.18 396 4.4 38 BULK-4c970a61
8613 Bulk Product b4360b78 Home & Garden $349.64 268 3.0 68 BULK-699f7eda
8614 Bulk Product 34e3d65a Books $359.07 22 1.4 28 BULK-5b419293
8615 Bulk Product 398dbd87 Electronics $322.68 114 3.9 60 BULK-3d657c6d
8616 Bulk Product a354bf5e Clothing $545.63 433 4.1 7 BULK-df7e6518
8617 Bulk Product b5e94b51 Clothing $148.81 119 2.7 49 BULK-1187907d
8618 Bulk Product f62f08cb Electronics $274.23 305 2.5 33 BULK-1f72e87e
8619 Bulk Product 4db1f23a Toys & Games $957.89 181 1.8 28 BULK-5a3a8f7c
8620 Bulk Product d0cb0af7 Toys & Games $895.57 481 4.6 83 BULK-7a0a93ac
8621 Bulk Product ab45ef79 Sports & Outdoors $575.47 116 2.4 38 BULK-1f3f0132
8622 Bulk Product 3e8f4b43 Sports & Outdoors $973.95 277 3.1 93 BULK-3c941d88
8623 Bulk Product 404a7a2b Sports & Outdoors $414.26 443 3.8 26 BULK-dc2034c9
8624 Bulk Product 21df6992 Clothing $869.49 40 1.7 81 BULK-2e4642da
8625 Bulk Product 9ffeab75 Clothing $57.23 94 2.4 31 BULK-f1073af9
8626 Bulk Product 39262c4a Toys & Games $206.46 311 3.0 85 BULK-d5631bf1
8627 Bulk Product 22ff9183 Clothing $378.57 451 3.8 72 BULK-8ff9dd2b
8628 Bulk Product bf80a4a1 Toys & Games $632.05 53 2.2 99 BULK-b46f936a
8629 Bulk Product 91d8c34c Home & Garden $946.85 61 4.5 86 BULK-870516dd
8630 Bulk Product c107bbbe Electronics $256.54 194 4.9 97 BULK-8afaf6d8
8631 Bulk Product 41d8db00 Clothing $442.38 359 3.5 29 BULK-575168bd
8632 Bulk Product fb11bec8 Clothing $681.78 289 2.1 99 BULK-6327faaf
8633 Bulk Product 5c35e854 Sports & Outdoors $999.61 18 0.7 65 BULK-ee0df196
8634 Bulk Product 57241e4e Home & Garden $513.67 479 3.7 84 BULK-18414880
8635 Bulk Product 8497115e Clothing $85.87 186 4.8 63 BULK-a42e20c7
8636 Bulk Product 0ad26ea7 Home & Garden $135.07 187 3.1 69 BULK-5e73299e
8637 Bulk Product d0d85af6 Sports & Outdoors $471.28 210 0.7 5 BULK-db42737c
8638 Bulk Product 9fcebec6 Electronics $786.95 393 0.7 67 BULK-aba0177c
8639 Bulk Product c75caa1f Toys & Games $676.21 73 4.0 72 BULK-c5fe4609
8640 Bulk Product f8332f74 Electronics $85.74 163 2.1 74 BULK-00c34ecb
8641 Bulk Product 766380ad Books $391.77 323 1.7 50 BULK-6e788671
8642 Bulk Product 91832947 Toys & Games $126.14 115 1.7 68 BULK-24736b31
8643 Bulk Product 8b165c56 Electronics $720.54 310 1.7 12 BULK-bff3434a
8644 Bulk Product 55ad1a01 Books $639.40 450 2.1 97 BULK-22feedff
8645 Bulk Product 4ffcdee0 Sports & Outdoors $133.07 157 3.0 8 BULK-3d5c4ab8
8646 Bulk Product bc406968 Clothing $861.81 484 4.5 64 BULK-e149f6e8
8647 Bulk Product d353c534 Books $889.45 8 0.2 83 BULK-d0d3c664
8648 Bulk Product 4f56d505 Sports & Outdoors $949.28 131 2.9 12 BULK-9fb5bdfb
8649 Bulk Product 0f452f53 Electronics $723.39 109 4.7 23 BULK-4d89d1b4
8650 Bulk Product 527acc4d Clothing $632.22 454 1.0 74 BULK-bd8e95ed
8651 Bulk Product 7014847f Books $796.97 382 2.3 61 BULK-9dbdf6e6
8652 Bulk Product 0b9123a1 Home & Garden $464.52 12 2.4 47 BULK-20384f81
8653 Bulk Product a8407c39 Toys & Games $780.71 329 2.3 12 BULK-09ea1a7e
8654 Bulk Product 35da8f86 Home & Garden $735.41 151 3.0 46 BULK-71121234
8655 Bulk Product 8a49db69 Electronics $385.83 395 1.5 91 BULK-809bcc4a
8656 Bulk Product 66c09764 Electronics $174.67 14 5.0 72 BULK-ebdd29a2
8657 Bulk Product e3e6a004 Electronics $722.39 406 0.9 77 BULK-6cd35f3a
8658 Bulk Product abd22068 Books $28.50 53 0.8 52 BULK-00cab3b8
8659 Bulk Product 2ceaf370 Books $743.99 358 2.8 63 BULK-9189cca4
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