Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

98 ms

Page Size

50

Current Page

371 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 371 Results Showing 18501 - 18550 of 24441

ID Name Category Price Stock Rating Reviews SKU
19060 Bulk Product 2bd35fab Toys & Games $81.59 108 2.8 19 BULK-396a279d
19061 Bulk Product ffa189ad Books $636.97 52 1.9 17 BULK-7549c2ca
19062 Bulk Product f3ac0479 Home & Garden $137.45 264 0.6 87 BULK-7be1e56e
19063 Bulk Product a6760027 Electronics $215.79 99 3.2 76 BULK-14461853
19064 Bulk Product eb709932 Toys & Games $577.68 379 0.0 85 BULK-05389827
19065 Bulk Product b6dc9799 Clothing $222.41 252 1.4 57 BULK-8a54898f
19066 Bulk Product 944f4c0c Sports & Outdoors $945.06 470 2.8 29 BULK-ad10f7d0
19067 Bulk Product 80586feb Clothing $966.85 272 3.9 74 BULK-aba8640a
19068 Bulk Product 81fadc11 Home & Garden $42.23 416 2.0 20 BULK-0e66888d
19069 Bulk Product 617f1c27 Books $351.17 437 3.9 44 BULK-c0940d30
19070 Bulk Product 5a759aff Books $141.08 247 4.5 85 BULK-c93e8169
19071 Bulk Product 972e7aac Toys & Games $591.32 27 4.3 45 BULK-fec55567
19072 Bulk Product b3c377d0 Home & Garden $610.15 170 0.8 76 BULK-1a8e67ce
19073 Bulk Product 9c857654 Electronics $17.31 320 0.9 11 BULK-92b9546f
19074 Bulk Product 5681b8ab Sports & Outdoors $22.03 215 1.3 0 BULK-b5de5fbb
19075 Bulk Product 8b1e80a2 Toys & Games $396.99 467 2.3 84 BULK-980e242d
19076 Bulk Product d42ec633 Books $777.35 306 3.1 9 BULK-40f49c54
19077 Bulk Product b39d9946 Sports & Outdoors $560.03 315 1.5 63 BULK-84404745
19078 Bulk Product dd28f12a Sports & Outdoors $65.43 127 2.5 62 BULK-48801ac6
19079 Bulk Product 9217a5a1 Books $360.73 473 4.4 3 BULK-483399b4
19080 Bulk Product 6287f7f4 Toys & Games $386.77 88 1.1 37 BULK-69c36d0c
19081 Bulk Product 6c90ca7f Clothing $631.72 223 1.4 98 BULK-f71f6dfa
19082 Bulk Product 4234e275 Toys & Games $539.74 164 4.9 32 BULK-14b48bb6
19083 Bulk Product fdaf60f4 Clothing $614.31 155 0.1 91 BULK-1de70218
19084 Bulk Product 0ebbbaba Electronics $791.53 337 3.8 46 BULK-30988951
19085 Bulk Product c6f55d8b Toys & Games $30.73 463 0.9 27 BULK-21dc6e9a
19086 Bulk Product b786b913 Electronics $419.79 377 1.9 72 BULK-ec1f5fe0
19087 Bulk Product e757c605 Toys & Games $509.25 244 0.1 90 BULK-2a896f55
19088 Bulk Product dde20d82 Electronics $563.44 246 2.1 22 BULK-0cac0952
19089 Bulk Product cddd1dbf Toys & Games $681.30 175 3.9 25 BULK-6159c860
19090 Bulk Product 827b2cf6 Electronics $766.53 476 2.1 20 BULK-acc234a5
19091 Bulk Product 9b800595 Home & Garden $311.70 253 1.3 57 BULK-73ba89be
19092 Bulk Product dadcb971 Home & Garden $779.94 7 3.1 4 BULK-fe32fdf9
19093 Bulk Product abc4c77d Home & Garden $369.78 439 2.3 36 BULK-e5e6cbe7
19094 Bulk Product 88bb3cf7 Home & Garden $432.32 476 1.4 58 BULK-5706d96f
19095 Bulk Product d77ba7c4 Sports & Outdoors $851.99 436 0.5 16 BULK-b0361958
19096 Bulk Product 20703f68 Home & Garden $907.19 367 3.6 44 BULK-d3c75741
19097 Bulk Product f496c628 Toys & Games $363.14 213 4.4 46 BULK-1ae2c59f
19098 Bulk Product dcba4ce4 Electronics $946.68 317 2.4 59 BULK-b5ac7214
19099 Bulk Product 7061d9a7 Books $254.51 311 0.6 16 BULK-a6d8f2ae
19100 Bulk Product ad9beb9c Home & Garden $514.41 426 3.0 24 BULK-1188e9d1
19101 Bulk Product f1ff4c6e Books $519.45 107 3.3 41 BULK-a6d5904c
19102 Bulk Product 5a8ad763 Toys & Games $945.25 100 4.6 21 BULK-e4178f74
19103 Bulk Product c118f861 Home & Garden $996.92 128 4.2 3 BULK-66d92c9a
19104 Bulk Product 86db11c1 Toys & Games $167.92 89 1.0 47 BULK-dfb7d361
19105 Bulk Product d1a79644 Electronics $413.58 123 1.3 9 BULK-e866de3e
19106 Bulk Product 216cc792 Books $976.11 73 2.7 64 BULK-79ac26ce
19107 Bulk Product fd9cf4d8 Toys & Games $254.07 201 2.6 44 BULK-1bcbf9b3
19108 Bulk Product 26da4ec5 Books $93.46 230 2.4 96 BULK-f4cab0e0
19109 Bulk Product 7b22bc72 Clothing $689.43 32 3.4 1 BULK-dc849777
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