Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

144 ms

Page Size

50

Current Page

253 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 253 Results Showing 12601 - 12650 of 24441

ID Name Category Price Stock Rating Reviews SKU
13160 Bulk Product 908dbdf5 Books $999.75 169 3.5 33 BULK-1d5bedcf
13161 Bulk Product 8438e151 Books $528.36 487 1.9 46 BULK-d9e4f562
13162 Bulk Product 468b948d Sports & Outdoors $76.30 438 4.0 58 BULK-cf5de53e
13163 Bulk Product c6908ce6 Clothing $396.36 336 1.4 17 BULK-b0970a03
13164 Bulk Product f932d2f3 Sports & Outdoors $844.91 486 2.7 88 BULK-e2b97cf0
13165 Bulk Product 36e9452b Electronics $732.19 248 0.9 90 BULK-feb84d41
13166 Bulk Product 6e954793 Electronics $656.56 161 5.0 29 BULK-c1c36e3b
13167 Bulk Product 42dfee55 Electronics $701.61 43 4.9 88 BULK-a33daf19
13168 Bulk Product 1df13faf Sports & Outdoors $54.96 301 4.8 50 BULK-4efd2cf8
13169 Bulk Product 50de5bf7 Home & Garden $589.57 325 3.8 15 BULK-66c6bd00
13170 Bulk Product d599be01 Home & Garden $13.68 395 4.8 90 BULK-74fc9bc8
13171 Bulk Product 10578918 Books $416.54 291 1.3 84 BULK-8357f326
13172 Bulk Product e61c4c65 Toys & Games $909.18 100 2.6 94 BULK-c2345abd
13173 Bulk Product 3307955c Electronics $239.67 318 0.4 58 BULK-dd868109
13174 Bulk Product d95e5378 Electronics $112.75 351 0.5 45 BULK-893bc262
13175 Bulk Product 1a0259c3 Electronics $48.35 392 1.9 22 BULK-ddbab937
13176 Bulk Product 04742c33 Books $311.71 187 0.4 38 BULK-0790863b
13177 Bulk Product ae4d6f82 Clothing $683.42 261 4.4 39 BULK-29570f72
13178 Bulk Product 2e6117b4 Clothing $920.68 459 0.4 60 BULK-e1419189
13179 Bulk Product 9b26f9e9 Sports & Outdoors $562.93 307 1.7 77 BULK-cbcaa6e0
13180 Bulk Product 67f11eb8 Electronics $644.31 188 1.8 21 BULK-7822e8a7
13181 Bulk Product 390d3fe7 Clothing $932.08 492 3.6 91 BULK-db724a78
13182 Bulk Product 631f49e7 Toys & Games $514.23 330 4.6 44 BULK-e31386da
13183 Bulk Product c3cc2a5a Home & Garden $326.73 103 0.7 12 BULK-a46f8bfa
13184 Bulk Product bd6e3644 Clothing $407.40 40 1.1 73 BULK-6bb70868
13185 Bulk Product 540b18fb Home & Garden $675.82 211 3.4 26 BULK-82aff00d
13186 Bulk Product e977b35c Clothing $251.34 332 4.4 62 BULK-f0b52923
13187 Bulk Product 51ad301f Electronics $509.85 344 1.4 16 BULK-0f888a66
13188 Bulk Product cf58038f Sports & Outdoors $286.85 436 3.8 61 BULK-2f3f6a90
13189 Bulk Product 1ca64b12 Home & Garden $563.02 231 3.0 78 BULK-f0c0a59c
13190 Bulk Product 8d3a60be Clothing $155.50 418 4.9 92 BULK-684e97c1
13191 Bulk Product b9333d38 Home & Garden $1,007.34 246 1.4 82 BULK-63ebb6ca
13192 Bulk Product 1eee15cf Clothing $581.32 224 2.0 38 BULK-39b780fe
13193 Bulk Product 086a517c Clothing $44.82 271 4.5 9 BULK-8eee2036
13194 Bulk Product 51242bdb Clothing $855.22 377 1.5 33 BULK-c7338239
13195 Bulk Product 7cd85ed0 Home & Garden $362.61 353 2.2 3 BULK-1b481ba0
13196 Bulk Product 85f740fb Toys & Games $78.42 337 0.8 92 BULK-e701c0ec
13197 Bulk Product a187584e Electronics $527.29 273 1.3 82 BULK-9f3b5aac
13198 Bulk Product 8223413a Home & Garden $598.15 280 4.2 81 BULK-14fbbd98
13199 Bulk Product acfe9820 Electronics $943.60 8 3.3 95 BULK-4f3ad121
13200 Bulk Product aec761a3 Sports & Outdoors $582.70 450 1.9 37 BULK-a6aa0730
13201 Bulk Product 64feb5f2 Clothing $101.83 351 0.9 36 BULK-e8f9ee27
13202 Bulk Product 12c301c7 Electronics $714.15 72 2.6 96 BULK-8577d4da
13203 Bulk Product 32d97bd1 Electronics $966.44 469 4.0 12 BULK-1dda8f3d
13204 Bulk Product 23c2c6d7 Electronics $673.07 486 0.1 41 BULK-555ed7c8
13205 Bulk Product 30e70063 Electronics $338.96 402 3.8 88 BULK-292be19f
13206 Bulk Product 0f9cd3a2 Electronics $974.67 499 4.0 55 BULK-30b56346
13207 Bulk Product de4f0d7f Books $874.42 52 4.5 50 BULK-10ee8a02
13208 Bulk Product ea63ec44 Electronics $342.80 225 2.2 6 BULK-b5e4e808
13209 Bulk Product f65acffd Home & Garden $838.53 129 3.1 60 BULK-35f7d207
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