Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

47 ms

Page Size

50

Current Page

234 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 234 Results Showing 11651 - 11700 of 24441

ID Name Category Price Stock Rating Reviews SKU
12210 Bulk Product 9153e499 Clothing $773.63 430 4.8 30 BULK-1de5c2f5
12211 Bulk Product b7078533 Toys & Games $855.08 45 2.4 16 BULK-26d68af4
12212 Bulk Product ec0f9d1a Electronics $782.44 379 3.9 86 BULK-fb39914e
12213 Bulk Product ca9739a3 Clothing $907.23 377 0.7 21 BULK-ab6384a3
12214 Bulk Product 62b185e1 Sports & Outdoors $386.79 284 0.6 67 BULK-b5a7fab1
12215 Bulk Product 9472cb99 Books $537.00 362 2.4 1 BULK-bf7fd2f6
12216 Bulk Product a20ea724 Electronics $849.10 462 0.3 23 BULK-d9266431
12217 Bulk Product 471b97c6 Sports & Outdoors $599.03 178 3.8 55 BULK-cbc8404d
12218 Bulk Product 8d51755d Sports & Outdoors $555.59 94 4.9 25 BULK-ab83a326
12219 Bulk Product a4fb50fa Sports & Outdoors $393.83 57 1.5 45 BULK-1b1f9b35
12220 Bulk Product 31e2f06b Home & Garden $728.10 347 0.3 9 BULK-5aadafee
12221 Bulk Product e9715f9f Books $448.81 493 3.2 96 BULK-eadac8cd
12222 Bulk Product 7d5f47b2 Toys & Games $101.51 322 2.9 24 BULK-34dda4b6
12223 Bulk Product 2cf8c450 Electronics $873.79 494 3.5 81 BULK-1bb5a93d
12224 Bulk Product fd66c76a Clothing $817.16 155 2.1 62 BULK-35881a2e
12225 Bulk Product 49a3d791 Home & Garden $30.69 63 0.1 59 BULK-63dc786b
12226 Bulk Product dce4b1a3 Books $708.36 354 0.8 21 BULK-cb3fee66
12227 Bulk Product d9016474 Toys & Games $469.97 67 4.7 1 BULK-d34f1701
12228 Bulk Product ee4be162 Toys & Games $438.75 357 4.2 85 BULK-1cc1bba2
12229 Bulk Product 7d099b50 Sports & Outdoors $972.92 412 1.7 52 BULK-8bf1b92b
12230 Bulk Product d054a199 Electronics $376.42 417 2.5 10 BULK-08a8a171
12231 Bulk Product 041420ce Sports & Outdoors $302.04 446 4.5 35 BULK-ed4b949f
12232 Bulk Product ba122b95 Home & Garden $746.38 431 3.1 68 BULK-0e164f78
12233 Bulk Product 8f10fbd4 Toys & Games $429.99 399 3.4 59 BULK-0659b3ee
12234 Bulk Product 9bdba883 Electronics $931.75 61 1.3 14 BULK-e922d5e2
12235 Bulk Product 1f7589a9 Home & Garden $34.39 435 3.6 29 BULK-4e7d8f95
12236 Bulk Product 5e982dc8 Clothing $571.65 416 4.4 46 BULK-f52f7c34
12237 Bulk Product 6e5bf845 Home & Garden $816.55 330 2.0 95 BULK-76f7a73b
12238 Bulk Product a5e53a2c Clothing $68.25 376 0.0 62 BULK-1b1da821
12239 Bulk Product 4b304096 Sports & Outdoors $883.76 336 0.2 44 BULK-0656d84a
12240 Bulk Product e870653a Books $188.32 425 1.7 2 BULK-fd5b7804
12241 Bulk Product 8b2a5779 Sports & Outdoors $609.23 111 2.6 47 BULK-723489e1
12242 Bulk Product bc55b445 Home & Garden $583.67 28 0.6 62 BULK-4a7117ff
12243 Bulk Product bee3475a Electronics $24.22 249 5.0 70 BULK-1203810d
12244 Bulk Product e1a7f8a5 Toys & Games $810.14 157 4.6 8 BULK-7a168363
12245 Bulk Product f7044fa8 Clothing $804.45 134 1.0 23 BULK-ae36d96e
12246 Bulk Product 79a6be5e Home & Garden $224.43 216 0.3 87 BULK-917dc518
12247 Bulk Product fea33a42 Electronics $381.64 373 1.9 27 BULK-b463d4e8
12248 Bulk Product 14548f3e Home & Garden $980.12 494 3.1 76 BULK-fe29c348
12249 Bulk Product 4455af9a Toys & Games $509.99 411 0.1 81 BULK-169c5e12
12250 Bulk Product a6ef931c Toys & Games $495.88 160 1.8 25 BULK-813cfb5e
12251 Bulk Product 08b26e3b Home & Garden $776.57 90 1.6 94 BULK-f893d982
12252 Bulk Product 33096c9c Home & Garden $480.30 281 0.6 73 BULK-9ec47bb7
12253 Bulk Product c77c2e8c Sports & Outdoors $584.67 43 0.0 56 BULK-0e86950d
12254 Bulk Product 06b272f5 Home & Garden $400.07 57 2.9 96 BULK-313e0591
12255 Bulk Product 477e3bc7 Books $120.56 261 4.4 10 BULK-f7eebd32
12256 Bulk Product c741937c Toys & Games $873.07 56 3.5 74 BULK-b626cf2f
12257 Bulk Product 68ccc1dd Clothing $581.39 1 0.8 20 BULK-6693dfd2
12258 Bulk Product 188d4d81 Electronics $996.06 220 0.6 73 BULK-cff6ded6
12259 Bulk Product ec54050a Home & Garden $824.63 113 2.5 54 BULK-b9bb5c72
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