Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

22 ms

Page Size

50

Current Page

415 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 415 Results Showing 20701 - 20750 of 24441

ID Name Category Price Stock Rating Reviews SKU
21260 Bulk Product 450ef634 Clothing $797.90 355 2.7 85 BULK-a92f98e3
21261 Bulk Product bcf3413e Sports & Outdoors $218.43 104 2.0 14 BULK-dc17d021
21262 Bulk Product 7d1a6f44 Sports & Outdoors $113.55 113 3.6 69 BULK-4a32975c
21263 Bulk Product 00fdd445 Sports & Outdoors $755.16 171 0.0 89 BULK-bee6beed
21264 Bulk Product c03c2e7d Toys & Games $146.82 268 3.3 47 BULK-f512745a
21265 Bulk Product c54f5961 Electronics $276.49 404 4.1 77 BULK-df0d1ac8
21266 Bulk Product 4a4126c4 Electronics $511.32 173 1.7 69 BULK-78f1b68b
21267 Bulk Product 28278251 Books $352.38 365 1.0 68 BULK-e9d56f2f
21268 Bulk Product 9ea7505f Toys & Games $893.20 260 1.6 56 BULK-cd6396be
21269 Bulk Product c76520a9 Books $565.76 150 1.1 30 BULK-a899cf9a
21270 Bulk Product 3406185d Sports & Outdoors $916.05 303 0.2 36 BULK-50df97f3
21271 Bulk Product 010826e7 Sports & Outdoors $708.03 458 3.4 98 BULK-ab2c9477
21272 Bulk Product 9120dc31 Electronics $699.41 406 1.5 76 BULK-4b2a3a4e
21273 Bulk Product 1df1f326 Electronics $586.24 425 2.3 91 BULK-46b8a5df
21274 Bulk Product a4adf207 Clothing $114.71 135 3.7 64 BULK-016135f6
21275 Bulk Product 7d6b2321 Books $678.29 11 1.1 53 BULK-201b8487
21276 Bulk Product 4da535c8 Electronics $718.99 125 2.5 43 BULK-cb9a5597
21277 Bulk Product 7d51d53d Home & Garden $379.78 64 2.2 87 BULK-92c27aa0
21278 Bulk Product 5e26af84 Electronics $878.37 274 3.0 36 BULK-7f7a0bd1
21279 Bulk Product 7b63b143 Electronics $1,003.73 232 3.8 24 BULK-e5b92be9
21280 Bulk Product 4f8c6379 Home & Garden $951.23 15 3.3 10 BULK-a486d1cc
21281 Bulk Product e9a0474c Sports & Outdoors $162.38 494 3.9 22 BULK-db3c51b1
21282 Bulk Product 087f2299 Clothing $995.55 107 4.0 67 BULK-a144e0ce
21283 Bulk Product 591dc8ec Books $853.34 437 2.9 28 BULK-bdabe580
21284 Bulk Product d4da2dea Books $170.50 451 4.7 56 BULK-14fa7ff1
21285 Bulk Product 986c5c97 Sports & Outdoors $620.93 229 3.8 22 BULK-8b93e3d6
21286 Bulk Product 3eb43fdf Electronics $201.90 205 2.7 24 BULK-f0a895f2
21287 Bulk Product de97b200 Toys & Games $862.44 82 2.4 39 BULK-9492fdf1
21288 Bulk Product afe3acc4 Sports & Outdoors $819.27 247 1.1 32 BULK-3830e2bd
21289 Bulk Product 9ca0a79f Sports & Outdoors $42.98 303 0.3 25 BULK-4e9f9463
21290 Bulk Product b3d46378 Electronics $64.40 358 4.3 7 BULK-b6becab2
21291 Bulk Product 2bd0094f Electronics $83.85 451 2.1 16 BULK-f012f738
21292 Bulk Product 2ed102ac Home & Garden $30.34 289 4.7 59 BULK-db60d982
21293 Bulk Product 24a4e9f3 Clothing $844.79 276 3.8 6 BULK-15ef99a8
21294 Bulk Product 665ac120 Clothing $521.17 293 0.9 24 BULK-0bf67a99
21295 Bulk Product 364d144a Toys & Games $572.28 442 4.3 25 BULK-b6202862
21296 Bulk Product 38c4aff6 Toys & Games $431.06 402 3.7 30 BULK-82506c77
21297 Bulk Product bd33e197 Home & Garden $679.12 331 3.3 79 BULK-0e366c6d
21298 Bulk Product b4869314 Books $422.51 393 2.9 16 BULK-4c1e4a51
21299 Bulk Product c9bcb6e9 Home & Garden $603.81 49 4.3 44 BULK-1269b044
21300 Bulk Product 1e7e6b37 Electronics $710.54 267 2.9 87 BULK-d106c526
21301 Bulk Product 5b4216c6 Toys & Games $101.74 255 4.2 15 BULK-67a178f0
21302 Bulk Product a8e56897 Toys & Games $47.81 162 0.9 61 BULK-9039c4e9
21303 Bulk Product e73e78d7 Sports & Outdoors $54.23 122 3.2 90 BULK-0bc53358
21304 Bulk Product ee44c0a9 Sports & Outdoors $333.88 398 4.3 56 BULK-a14f82d7
21305 Bulk Product c2cddffa Books $847.04 88 0.4 60 BULK-71764223
21306 Bulk Product 865fa180 Toys & Games $168.25 148 0.4 61 BULK-8b8dc1e1
21307 Bulk Product 76319587 Toys & Games $300.53 94 2.1 83 BULK-89fe961b
21308 Bulk Product 3bf555e9 Toys & Games $194.29 242 2.6 69 BULK-581f5afb
21309 Bulk Product 09708ea5 Sports & Outdoors $900.04 139 4.7 17 BULK-3b463e5b
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