Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

22 ms

Page Size

50

Current Page

373 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 373 Results Showing 18601 - 18650 of 24441

ID Name Category Price Stock Rating Reviews SKU
19160 Bulk Product 6663aba8 Sports & Outdoors $1,009.34 213 4.5 54 BULK-4cd554cf
19161 Bulk Product f51078f4 Sports & Outdoors $865.37 283 1.7 60 BULK-7f53d94d
19162 Bulk Product d6d20a28 Electronics $655.39 465 1.7 13 BULK-dfee0a9b
19163 Bulk Product 789f3f03 Sports & Outdoors $632.42 275 3.1 21 BULK-81e0bad9
19164 Bulk Product c3bc69ce Books $216.65 305 2.2 14 BULK-17e64586
19165 Bulk Product ffd24652 Toys & Games $570.00 192 0.9 92 BULK-1a9cce7f
19166 Bulk Product eace542e Sports & Outdoors $81.10 159 5.0 16 BULK-f155ad87
19167 Bulk Product 53c08d8c Toys & Games $584.71 332 0.8 17 BULK-35c3f5cf
19168 Bulk Product a12e3aad Sports & Outdoors $598.55 206 2.8 67 BULK-ac832bba
19169 Bulk Product 39ef237a Sports & Outdoors $281.44 361 0.5 91 BULK-6cbf2266
19170 Bulk Product 47e32f80 Clothing $726.06 481 4.7 15 BULK-e8d1a262
19171 Bulk Product 939b8376 Clothing $817.11 306 3.9 64 BULK-6d319e69
19172 Bulk Product f7b7502e Books $616.64 447 4.7 20 BULK-caff5e0c
19173 Bulk Product 7336de9c Home & Garden $907.51 425 4.1 46 BULK-684689ad
19174 Bulk Product a334ae6c Toys & Games $421.81 416 1.4 88 BULK-c90497ce
19175 Bulk Product f7be22db Electronics $621.63 298 4.5 78 BULK-f9971ac3
19176 Bulk Product 0f3930bd Toys & Games $703.05 380 3.3 18 BULK-613fbe41
19177 Bulk Product a991e702 Books $466.36 222 2.6 5 BULK-241948bd
19178 Bulk Product ba273c73 Home & Garden $327.48 295 2.8 9 BULK-788e0c69
19179 Bulk Product 3078d6da Electronics $259.22 301 0.7 93 BULK-64d1c799
19180 Bulk Product 8b05876d Clothing $135.49 417 4.2 73 BULK-5e784e7a
19181 Bulk Product 2a46b611 Home & Garden $102.08 313 1.1 64 BULK-2e333dae
19182 Bulk Product 18ffc78b Books $266.90 398 0.1 13 BULK-c383d56e
19183 Bulk Product 1a7e8531 Sports & Outdoors $591.14 17 3.9 53 BULK-67f8c62b
19184 Bulk Product b0c9861a Clothing $709.55 353 2.6 59 BULK-83450398
19185 Bulk Product b7430574 Sports & Outdoors $992.26 262 4.5 83 BULK-8c95d7cf
19186 Bulk Product 5e3c58ea Home & Garden $610.75 75 2.3 80 BULK-db0701fa
19187 Bulk Product 94ff01bc Books $910.63 59 2.7 35 BULK-c978d5f8
19188 Bulk Product fd6d1dc4 Toys & Games $790.03 494 2.3 51 BULK-2b324fd9
19189 Bulk Product 7e0a73b3 Electronics $734.37 71 4.3 5 BULK-43c38a21
19190 Bulk Product 753206e0 Sports & Outdoors $946.79 292 1.1 50 BULK-e5eacf95
19191 Bulk Product 2538328a Sports & Outdoors $830.20 478 1.2 35 BULK-fecc1929
19192 Bulk Product 29bae616 Toys & Games $862.07 440 2.7 13 BULK-fdcf9784
19193 Bulk Product 2dd12470 Books $178.78 71 2.8 18 BULK-d453cf65
19194 Bulk Product 1f0ca118 Clothing $684.45 461 2.1 52 BULK-f20b78ab
19195 Bulk Product 3079654e Electronics $214.42 8 0.3 33 BULK-55f4a9b4
19196 Bulk Product 6f3d5e08 Home & Garden $509.99 363 2.2 61 BULK-d3571b1b
19197 Bulk Product fec6c10e Home & Garden $557.51 42 2.6 78 BULK-44957f31
19198 Bulk Product e93a490e Toys & Games $494.52 315 4.4 36 BULK-15f47810
19199 Bulk Product d2376d87 Home & Garden $29.20 482 2.9 95 BULK-8b33158d
19200 Bulk Product 66bcf13f Sports & Outdoors $200.38 113 4.6 52 BULK-2ce089c4
19201 Bulk Product 4c1b9998 Clothing $387.22 303 1.6 24 BULK-dfda81b4
19202 Bulk Product af42fc4d Books $1,009.86 147 0.6 20 BULK-f3a67fcb
19203 Bulk Product 02a01954 Books $534.41 235 3.4 18 BULK-be0cfaa3
19204 Bulk Product 14fca8fb Books $713.19 374 2.4 84 BULK-e0477495
19205 Bulk Product 3c1c9b97 Books $183.68 13 1.2 68 BULK-0f6316d6
19206 Bulk Product 74fb5d9e Sports & Outdoors $55.66 260 3.7 95 BULK-f28c161f
19207 Bulk Product 0ae7379f Sports & Outdoors $763.64 166 2.1 2 BULK-b04d8a33
19208 Bulk Product ee198362 Clothing $396.30 113 0.4 26 BULK-6a79c486
19209 Bulk Product 2f3d82fc Clothing $709.92 16 1.1 53 BULK-0667e407
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