Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

14 ms

Page Size

50

Current Page

252 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 252 Results Showing 12551 - 12600 of 24441

ID Name Category Price Stock Rating Reviews SKU
13110 Bulk Product ab4d32a2 Electronics $856.84 177 2.6 96 BULK-e1500b8f
13111 Bulk Product a9b5ad59 Clothing $379.47 151 1.0 39 BULK-86ffb339
13112 Bulk Product b89f0ffe Sports & Outdoors $19.98 403 2.9 84 BULK-67be35e7
13113 Bulk Product ddaf8d2e Books $575.96 398 1.9 43 BULK-09c01041
13114 Bulk Product f07ed1e2 Sports & Outdoors $93.96 408 0.3 18 BULK-3b8371f5
13115 Bulk Product 0b868846 Sports & Outdoors $970.00 215 1.9 79 BULK-2e272fc9
13116 Bulk Product 7a0fa1cd Books $357.48 103 2.4 48 BULK-faa8ec39
13117 Bulk Product ccc42233 Home & Garden $479.55 75 0.6 92 BULK-6f68b987
13118 Bulk Product 14af09c2 Sports & Outdoors $799.47 23 1.4 87 BULK-8cd31d9d
13119 Bulk Product 7113ea85 Books $125.63 252 0.1 37 BULK-cb7a2de0
13120 Bulk Product 48d009db Home & Garden $633.05 93 0.7 48 BULK-61c9e743
13121 Bulk Product 889070ce Sports & Outdoors $392.20 217 0.7 16 BULK-961bbb93
13122 Bulk Product 3bf8db3e Toys & Games $280.16 181 3.0 14 BULK-dcf74007
13123 Bulk Product feadde2a Electronics $482.75 241 4.1 94 BULK-be8544b4
13124 Bulk Product 4d59da5c Sports & Outdoors $407.64 425 3.0 78 BULK-2516bdfc
13125 Bulk Product 96bbc737 Home & Garden $956.74 196 2.5 79 BULK-5fd623b8
13126 Bulk Product 1378dfdb Home & Garden $722.06 55 2.2 63 BULK-dab2297b
13127 Bulk Product 0c8b7d2b Electronics $108.44 212 3.8 57 BULK-90ee7aff
13128 Bulk Product 1219c1a1 Home & Garden $139.79 396 3.6 78 BULK-c63eca71
13129 Bulk Product b41e241d Sports & Outdoors $247.85 58 0.6 12 BULK-0284a9c5
13130 Bulk Product e6beb681 Toys & Games $16.01 46 2.6 56 BULK-9d464b04
13131 Bulk Product 0f7ab2bd Books $212.29 438 4.3 42 BULK-7db00d62
13132 Bulk Product 6445c66b Sports & Outdoors $628.39 353 4.4 37 BULK-5a87c5ad
13133 Bulk Product 87683d6e Electronics $681.96 306 3.5 45 BULK-7304e6af
13134 Bulk Product fd86aca3 Toys & Games $905.40 160 3.1 31 BULK-deb18058
13135 Bulk Product ab842db9 Toys & Games $973.26 441 1.9 60 BULK-5aa54c6b
13136 Bulk Product 29f6ec19 Books $59.56 475 3.2 15 BULK-ed6c1ffa
13137 Bulk Product afb87fe3 Books $23.52 298 1.2 29 BULK-3ed94796
13138 Bulk Product 1c101f60 Sports & Outdoors $888.04 473 4.7 98 BULK-e9f0d88e
13139 Bulk Product 52a968ae Clothing $152.07 258 4.9 47 BULK-e9d2271c
13140 Bulk Product 147424c4 Home & Garden $418.27 349 0.2 75 BULK-694cd527
13141 Bulk Product 48519364 Electronics $236.55 457 3.2 33 BULK-567d3a8c
13142 Bulk Product 837bf542 Home & Garden $703.87 291 4.5 67 BULK-1b07bd7f
13143 Bulk Product 8600084c Home & Garden $587.62 115 3.0 52 BULK-fd3526bb
13144 Bulk Product d41bfe3c Toys & Games $307.58 184 3.7 51 BULK-2ae9b87d
13145 Bulk Product 38406174 Books $471.88 454 3.2 34 BULK-00673b36
13146 Bulk Product a0fa0001 Electronics $752.35 438 0.5 4 BULK-7f5ccae8
13147 Bulk Product d924bf66 Clothing $454.92 221 3.9 79 BULK-7ef0ae50
13148 Bulk Product bf13630f Electronics $391.03 60 4.2 97 BULK-a12fe0e2
13149 Bulk Product 8c0b5de1 Home & Garden $978.23 360 2.6 72 BULK-1f66ce86
13150 Bulk Product 6d2abb96 Electronics $367.78 237 1.8 20 BULK-4114543c
13151 Bulk Product 06507747 Electronics $239.64 218 3.5 31 BULK-45a4b1f2
13152 Bulk Product 667dc924 Toys & Games $441.64 329 4.7 97 BULK-beca9e81
13153 Bulk Product 72e5536f Clothing $668.17 406 4.8 56 BULK-f8d03b49
13154 Bulk Product 3913ab40 Sports & Outdoors $197.25 451 0.5 46 BULK-ea66b487
13155 Bulk Product 43ef43f8 Books $681.48 206 3.9 26 BULK-86e96867
13156 Bulk Product a65b3697 Electronics $782.74 121 1.0 95 BULK-c1420016
13157 Bulk Product d3211524 Electronics $349.07 251 0.8 6 BULK-7ffddcb0
13158 Bulk Product 14175222 Electronics $409.69 156 0.6 84 BULK-c3eb3f87
13159 Bulk Product b9dfd973 Sports & Outdoors $91.00 177 3.2 48 BULK-d2ed8028
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