Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

1511 ms

Page Size

50

Current Page

366 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 366 Results Showing 18251 - 18300 of 24441

ID Name Category Price Stock Rating Reviews SKU
18810 Bulk Product 016f61a8 Toys & Games $66.37 252 4.5 5 BULK-02ba4cb0
18811 Bulk Product a6e6f0e9 Books $857.11 51 5.0 87 BULK-5cec24dd
18812 Bulk Product d28bd666 Toys & Games $921.57 384 3.5 99 BULK-bd46e55b
18813 Bulk Product ab394d37 Home & Garden $370.51 128 4.0 17 BULK-c39719d3
18814 Bulk Product 1bfa71f6 Toys & Games $906.49 224 4.4 59 BULK-630d913b
18815 Bulk Product 611f88a1 Toys & Games $583.25 233 0.0 70 BULK-2c334547
18816 Bulk Product f7385558 Clothing $175.62 214 1.8 54 BULK-a3ed9d0f
18817 Bulk Product 5733738d Sports & Outdoors $800.41 399 4.2 82 BULK-f7971624
18818 Bulk Product fa9ba5ef Home & Garden $964.97 208 0.6 39 BULK-a9361c6a
18819 Bulk Product b9cea0be Home & Garden $132.54 340 0.4 83 BULK-d0338790
18820 Bulk Product 28f09c96 Clothing $64.29 385 0.9 0 BULK-b8944ea4
18821 Bulk Product e860eba2 Sports & Outdoors $661.19 315 0.6 78 BULK-d2abb22b
18822 Bulk Product 6a32db37 Clothing $248.68 130 2.5 9 BULK-d6ba7e7a
18823 Bulk Product 5c42686a Electronics $167.66 347 4.7 29 BULK-aaddfcfc
18824 Bulk Product 1aba45f1 Electronics $819.38 69 2.2 0 BULK-e285f81d
18825 Bulk Product a84231fe Toys & Games $918.39 62 3.3 8 BULK-d08e6a44
18826 Bulk Product a6c0866c Clothing $231.38 324 2.2 60 BULK-314769cb
18827 Bulk Product fdd49b4b Books $174.25 405 2.5 53 BULK-f7582fcd
18828 Bulk Product 313f9fdc Books $859.18 103 0.5 2 BULK-0322fa09
18829 Bulk Product ed740178 Books $482.45 361 4.2 16 BULK-6e0115c3
18830 Bulk Product e3bdbce0 Home & Garden $493.72 107 0.6 62 BULK-1794bc69
18831 Bulk Product dcb69dd7 Sports & Outdoors $195.34 42 1.9 66 BULK-850c33c1
18832 Bulk Product e77401de Clothing $611.03 92 4.0 77 BULK-39924c4b
18833 Bulk Product d2fe9bb2 Toys & Games $843.00 298 0.7 82 BULK-1ddad3dc
18834 Bulk Product ab9d1a40 Books $639.13 434 3.6 19 BULK-8d7f7127
18835 Bulk Product 1998473d Sports & Outdoors $923.62 389 0.3 25 BULK-0e058ffb
18836 Bulk Product 87e018c0 Electronics $140.79 23 0.6 17 BULK-525e6c1f
18837 Bulk Product fa02a184 Toys & Games $117.98 151 1.6 47 BULK-ee7e14e0
18838 Bulk Product 8e1b2497 Books $596.00 365 4.3 27 BULK-75ec2bb1
18839 Bulk Product dfbde4af Electronics $167.59 258 3.5 32 BULK-6bce81da
18840 Bulk Product 3ce65ab7 Sports & Outdoors $598.11 49 0.3 70 BULK-a6c08290
18841 Bulk Product 4518d9ef Electronics $753.26 247 4.8 27 BULK-b1ae03ab
18842 Bulk Product 7188e787 Toys & Games $391.07 19 0.8 65 BULK-cfe677da
18843 Bulk Product 93547be2 Toys & Games $658.59 7 3.1 58 BULK-ffd81aee
18844 Bulk Product efe642ca Sports & Outdoors $393.18 64 4.2 34 BULK-c6581adb
18845 Bulk Product a61d98fa Home & Garden $328.10 181 0.1 44 BULK-27967b38
18846 Bulk Product ba123ef3 Clothing $942.16 244 3.8 97 BULK-dd3aafc3
18847 Bulk Product 3ff64745 Books $388.05 244 4.7 60 BULK-d3cb28a1
18848 Bulk Product 3d1ef9cb Electronics $518.26 469 4.3 89 BULK-042f1b35
18849 Bulk Product f0771b16 Sports & Outdoors $675.46 135 4.1 8 BULK-19d29d17
18850 Bulk Product 4bc5f727 Books $579.14 499 1.5 78 BULK-c6045b2b
18851 Bulk Product e03a001e Clothing $489.62 281 0.5 59 BULK-df161f9b
18852 Bulk Product 89ba9d9e Home & Garden $281.52 395 4.7 80 BULK-70399e1d
18853 Bulk Product c02c568c Toys & Games $694.18 292 0.3 80 BULK-ee5154ac
18854 Bulk Product 4ccbb781 Sports & Outdoors $319.38 314 1.2 89 BULK-d068fb1a
18855 Bulk Product cafcdaf0 Clothing $458.77 379 4.6 77 BULK-31ab46bf
18856 Bulk Product ee8f6776 Books $28.17 187 1.3 4 BULK-7b725851
18857 Bulk Product 47398c05 Books $418.85 431 0.4 39 BULK-d5e17272
18858 Bulk Product 2c6035fa Sports & Outdoors $445.03 478 2.8 82 BULK-902e3467
18859 Bulk Product b1e8d10e Electronics $628.60 363 0.3 76 BULK-debd3cec
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