Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

46 ms

Page Size

50

Current Page

236 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 236 Results Showing 11751 - 11800 of 24441

ID Name Category Price Stock Rating Reviews SKU
12310 Bulk Product ad45ac5b Electronics $892.24 271 2.0 82 BULK-7bff60c5
12311 Bulk Product 5ebe4611 Books $923.88 175 3.5 78 BULK-13f68889
12312 Bulk Product a30fdb43 Toys & Games $345.62 191 0.5 88 BULK-1b2e2f78
12313 Bulk Product d20109fe Toys & Games $204.45 478 3.1 64 BULK-e7357e88
12314 Bulk Product c8c2b679 Sports & Outdoors $672.96 490 4.8 87 BULK-90e97466
12315 Bulk Product f33c0280 Electronics $857.63 418 2.7 93 BULK-e639bdc2
12316 Bulk Product 614647c4 Electronics $128.81 436 0.0 90 BULK-4be65521
12317 Bulk Product c7198def Sports & Outdoors $45.99 433 0.1 19 BULK-bd02153e
12318 Bulk Product 32d76516 Books $533.27 261 4.4 79 BULK-ef4c6fc5
12319 Bulk Product 9a9cdd5e Sports & Outdoors $284.33 169 4.9 13 BULK-fe7f65ac
12320 Bulk Product 24bf52a3 Sports & Outdoors $936.22 254 2.2 90 BULK-495b3cc2
12321 Bulk Product 74463f2f Sports & Outdoors $794.17 114 4.9 52 BULK-646c2acf
12322 Bulk Product 899e8d4c Sports & Outdoors $364.67 76 2.0 58 BULK-7ef5b02d
12323 Bulk Product 455697b0 Home & Garden $405.58 91 1.4 59 BULK-e638f2c6
12324 Bulk Product 8670574b Home & Garden $933.35 241 0.1 0 BULK-4c7c5e8f
12325 Bulk Product 1845f258 Electronics $552.27 274 3.0 81 BULK-cf8b7aa2
12326 Bulk Product 90d0ecf9 Clothing $258.86 149 4.5 79 BULK-6dd9ae13
12327 Bulk Product 21d7136d Electronics $390.94 460 3.3 37 BULK-85cdaf63
12328 Bulk Product 820aa625 Sports & Outdoors $461.66 226 2.9 72 BULK-c5ac5be8
12329 Bulk Product a6337060 Toys & Games $359.91 86 0.6 59 BULK-5475a55a
12330 Bulk Product 7e3e6895 Electronics $336.81 395 4.2 77 BULK-e64858aa
12331 Bulk Product fa9d7dae Clothing $839.05 115 1.1 76 BULK-cb707b3e
12332 Bulk Product a7171e2f Clothing $601.53 178 4.8 17 BULK-82525f13
12333 Bulk Product 01f2bb68 Books $237.11 61 4.1 49 BULK-e719b4a9
12334 Bulk Product 9e5fcb18 Home & Garden $859.00 196 4.6 8 BULK-22974801
12335 Bulk Product 360f2cf6 Toys & Games $808.17 473 2.8 61 BULK-0e0aa711
12336 Bulk Product 8bc17685 Sports & Outdoors $45.22 409 2.5 78 BULK-8b46a712
12337 Bulk Product 7d38e808 Sports & Outdoors $245.29 62 4.4 45 BULK-2af28458
12338 Bulk Product 06c9e1f1 Books $91.20 14 0.4 11 BULK-9aac2a05
12339 Bulk Product 93fdac13 Clothing $306.56 280 4.1 28 BULK-41430236
12340 Bulk Product 85370750 Clothing $630.10 205 2.4 5 BULK-0b457996
12341 Bulk Product e7802521 Toys & Games $969.65 330 4.0 16 BULK-88d5a46d
12342 Bulk Product a0854d1d Electronics $383.12 306 4.5 1 BULK-8388b3e1
12343 Bulk Product 24b120cd Books $640.72 221 4.9 63 BULK-f9287184
12344 Bulk Product 3be97a2f Home & Garden $230.92 460 1.4 28 BULK-ecbe824f
12345 Bulk Product 5435cc09 Toys & Games $138.13 26 3.5 50 BULK-04076323
12346 Bulk Product 7ea8b3d1 Home & Garden $874.77 297 4.4 31 BULK-34c317b2
12347 Bulk Product 2cc9a092 Books $118.34 224 3.9 74 BULK-917c9cb6
12348 Bulk Product 18c998e7 Sports & Outdoors $307.92 415 2.0 79 BULK-9c7b1b90
12349 Bulk Product 7776ce4c Toys & Games $983.90 336 4.7 13 BULK-d3e351e8
12350 Bulk Product 3e821761 Books $82.20 240 4.3 29 BULK-fcdf449e
12351 Bulk Product 613e2819 Home & Garden $66.40 353 2.5 18 BULK-d016e8cc
12352 Bulk Product 39ad8b43 Sports & Outdoors $650.34 151 4.2 52 BULK-7809ed53
12353 Bulk Product 9a46a3ce Home & Garden $631.05 331 3.6 55 BULK-b0267049
12354 Bulk Product a41e0109 Clothing $832.13 359 2.8 55 BULK-66d027dc
12355 Bulk Product dfc029d7 Books $292.22 317 2.1 43 BULK-5f5ddd56
12356 Bulk Product f556531d Home & Garden $142.44 453 0.8 18 BULK-489228d5
12357 Bulk Product 3f402601 Sports & Outdoors $592.15 495 4.7 13 BULK-f8a349be
12358 Bulk Product 8dd455b2 Toys & Games $761.54 142 4.7 77 BULK-6694b040
12359 Bulk Product d7168903 Clothing $203.62 386 0.6 98 BULK-a4fbf8da
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