Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

12 ms

Page Size

50

Current Page

291 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 291 Results Showing 14501 - 14550 of 24441

ID Name Category Price Stock Rating Reviews SKU
15060 Bulk Product 7e14b878 Sports & Outdoors $540.89 44 2.1 60 BULK-6b20b79e
15061 Bulk Product 7ac8635c Home & Garden $689.99 415 2.3 62 BULK-300a834e
15062 Bulk Product ea2fa4bc Toys & Games $13.36 170 4.5 74 BULK-55b98c36
15063 Bulk Product 852a3438 Home & Garden $759.73 148 4.4 54 BULK-402a5b06
15064 Bulk Product 017006ce Toys & Games $574.98 20 3.2 1 BULK-54c79f6e
15065 Bulk Product a4b641e6 Toys & Games $249.32 160 3.7 25 BULK-733aa3e3
15066 Bulk Product 6e98f22f Toys & Games $758.29 129 1.7 60 BULK-2b2d0106
15067 Bulk Product 040ec003 Home & Garden $396.62 80 1.7 83 BULK-31824bbc
15068 Bulk Product 52733a2c Sports & Outdoors $421.76 422 2.5 6 BULK-d62cc501
15069 Bulk Product 1c130665 Sports & Outdoors $750.31 53 1.3 2 BULK-a4aa3f64
15070 Bulk Product bf920fd8 Home & Garden $983.52 482 1.1 54 BULK-99447581
15071 Bulk Product a42308a6 Toys & Games $424.34 356 2.6 61 BULK-68f21285
15072 Bulk Product 3a941213 Sports & Outdoors $679.76 216 2.3 53 BULK-f529ed41
15073 Bulk Product 2a8d16db Toys & Games $125.52 84 0.8 61 BULK-d60362c5
15074 Bulk Product 291a711c Sports & Outdoors $39.07 267 4.0 66 BULK-42b41af5
15075 Bulk Product aa37114f Toys & Games $84.74 324 2.6 58 BULK-02531601
15076 Bulk Product 9a165639 Clothing $963.80 206 1.3 98 BULK-73588520
15077 Bulk Product 50ea8796 Books $221.09 34 1.4 13 BULK-c08146b3
15078 Bulk Product 52f7e7d3 Books $527.92 291 0.6 26 BULK-5c2469d1
15079 Bulk Product 3d53934a Home & Garden $128.46 444 0.0 28 BULK-3637522c
15080 Bulk Product 4c39a1e0 Home & Garden $481.52 270 4.3 55 BULK-bc6f7320
15081 Bulk Product 88a19787 Electronics $800.49 386 1.2 85 BULK-065892be
15082 Bulk Product 7b2a178e Clothing $893.34 411 4.5 82 BULK-1a4c81c3
15083 Bulk Product 5cac59bd Books $187.70 298 2.7 17 BULK-2b452b56
15084 Bulk Product e0ee2fcf Toys & Games $528.48 51 3.2 72 BULK-c0560ecb
15085 Bulk Product 33f8764c Clothing $131.31 409 4.2 92 BULK-54bb91e3
15086 Bulk Product ff32adf8 Sports & Outdoors $361.87 132 4.1 91 BULK-9a6de182
15087 Bulk Product 00c9a190 Clothing $306.47 155 0.4 99 BULK-d195c31c
15088 Bulk Product f2453f33 Home & Garden $436.40 256 2.4 99 BULK-331dc32a
15089 Bulk Product bb0f5172 Sports & Outdoors $772.20 376 2.3 82 BULK-557928cb
15090 Bulk Product 65181e81 Home & Garden $585.76 210 4.3 65 BULK-1fc0f75c
15091 Bulk Product f811cdb2 Electronics $888.11 65 4.2 20 BULK-01143957
15092 Bulk Product 46170700 Home & Garden $261.21 41 2.4 53 BULK-01245580
15093 Bulk Product 1bdcd0ab Toys & Games $920.04 19 4.6 64 BULK-b7f4e875
15094 Bulk Product bdf22ea8 Home & Garden $289.82 32 0.3 96 BULK-0a1d9bca
15095 Bulk Product adcc7114 Electronics $492.56 41 1.6 14 BULK-55c57978
15096 Bulk Product 23d387cf Clothing $239.38 486 5.0 65 BULK-52ffb1eb
15097 Bulk Product 9b596615 Clothing $863.02 361 3.4 31 BULK-794dd9d3
15098 Bulk Product b88d5e00 Home & Garden $515.28 41 3.7 52 BULK-374dd245
15099 Bulk Product 528073e4 Books $202.24 193 1.2 26 BULK-e7947ce3
15100 Bulk Product 5193b13a Electronics $814.16 124 1.7 54 BULK-c30262a1
15101 Bulk Product 9b01cab9 Clothing $467.07 425 3.7 40 BULK-a664f9c7
15102 Bulk Product be7ca977 Home & Garden $727.83 277 2.9 17 BULK-9b498588
15103 Bulk Product def5a15f Books $627.22 310 0.1 12 BULK-27dceed3
15104 Bulk Product 3941bfce Clothing $586.91 416 2.0 8 BULK-9aca2595
15105 Bulk Product b9781a80 Sports & Outdoors $867.87 354 1.2 8 BULK-bac44b84
15106 Bulk Product b0ea3267 Sports & Outdoors $330.48 99 0.2 54 BULK-77cee513
15107 Bulk Product 8de009b4 Home & Garden $617.33 280 3.4 90 BULK-14ae469c
15108 Bulk Product a7626c9a Toys & Games $34.50 94 1.4 57 BULK-1d86d417
15109 Bulk Product 5e64d196 Home & Garden $140.58 397 3.0 3 BULK-1e604604
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