Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

13 ms

Page Size

50

Current Page

314 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 314 Results Showing 15651 - 15700 of 24441

ID Name Category Price Stock Rating Reviews SKU
16210 Bulk Product a2487b72 Home & Garden $285.40 339 1.7 21 BULK-e5437aec
16211 Bulk Product 0cba40fc Clothing $433.51 309 3.1 95 BULK-a9601d78
16212 Bulk Product aa60f7b2 Home & Garden $800.27 278 2.4 30 BULK-cfafcbc3
16213 Bulk Product 6e16b71b Electronics $564.59 388 5.0 94 BULK-8e5f06c5
16214 Bulk Product 6985f7fe Books $199.48 289 1.4 22 BULK-56adad1c
16215 Bulk Product c8eee4de Toys & Games $381.24 321 3.8 75 BULK-abf53ecc
16216 Bulk Product 069d478a Home & Garden $209.90 107 1.5 52 BULK-4ddb78a2
16217 Bulk Product 5cdd1d16 Electronics $467.23 66 2.5 83 BULK-90ca8566
16218 Bulk Product c41e64d0 Home & Garden $525.43 184 4.1 58 BULK-e0a5cdc4
16219 Bulk Product 862be6b4 Books $59.59 360 3.5 64 BULK-ee4614f4
16220 Bulk Product 4686fde6 Sports & Outdoors $943.46 40 4.4 41 BULK-4f97ad1f
16221 Bulk Product 2849efe3 Electronics $517.33 110 1.8 94 BULK-e9042468
16222 Bulk Product 140d8475 Home & Garden $46.09 257 4.6 55 BULK-8247363c
16223 Bulk Product 3b72d261 Home & Garden $558.27 408 4.5 29 BULK-c279b178
16224 Bulk Product 506cffb8 Sports & Outdoors $988.68 258 0.3 27 BULK-1b1bccef
16225 Bulk Product 46e61b3d Sports & Outdoors $25.62 112 3.5 10 BULK-36e8714e
16226 Bulk Product f1a1985f Toys & Games $860.37 94 3.1 43 BULK-de8f3c47
16227 Bulk Product 91f50981 Toys & Games $617.50 453 0.8 25 BULK-8bb670f8
16228 Bulk Product 2c5cdf72 Electronics $475.03 163 4.4 13 BULK-3df31bf4
16229 Bulk Product 1a9ebe0f Toys & Games $246.72 290 2.7 10 BULK-a73e7775
16230 Bulk Product f6d7d7ef Sports & Outdoors $976.15 280 3.0 21 BULK-73b84a40
16231 Bulk Product 705975d2 Toys & Games $250.70 339 1.0 76 BULK-3ec463b1
16232 Bulk Product d6399414 Sports & Outdoors $635.32 70 2.1 94 BULK-348f5cdf
16233 Bulk Product 75470f72 Clothing $108.93 435 0.9 64 BULK-fa0e503c
16234 Bulk Product fe6a9d94 Sports & Outdoors $105.94 60 4.1 0 BULK-9ad3538b
16235 Bulk Product 4458c885 Home & Garden $129.37 213 4.7 24 BULK-848b4397
16236 Bulk Product da615c70 Clothing $239.64 135 2.2 54 BULK-58c93240
16237 Bulk Product f4f02e6d Toys & Games $257.25 247 0.8 43 BULK-8304da68
16238 Bulk Product b35f3b9a Books $121.22 330 4.9 89 BULK-50f3e11d
16239 Bulk Product 4fa88079 Books $565.81 279 4.5 85 BULK-e99d4bfe
16240 Bulk Product f4128d54 Home & Garden $938.74 65 1.2 8 BULK-044089fd
16241 Bulk Product 6a661ec7 Home & Garden $915.72 124 2.5 32 BULK-435e3dda
16242 Bulk Product f5f188ca Books $250.52 231 1.3 49 BULK-bee17d2d
16243 Bulk Product bc16236b Books $878.22 138 1.5 3 BULK-6befc08a
16244 Bulk Product 151dcf60 Books $915.00 80 4.1 84 BULK-cfb57496
16245 Bulk Product 53897560 Toys & Games $448.04 492 4.0 34 BULK-a26f8cb2
16246 Bulk Product e8ebb383 Toys & Games $857.63 155 1.3 99 BULK-7be0a766
16247 Bulk Product 4c931327 Electronics $572.31 205 0.5 27 BULK-c037dd85
16248 Bulk Product cf358c7f Toys & Games $335.00 30 0.2 99 BULK-2fbefe51
16249 Bulk Product 81533f61 Clothing $38.80 215 4.8 87 BULK-cd059f5a
16250 Bulk Product b0461440 Toys & Games $689.95 52 3.1 54 BULK-73412965
16251 Bulk Product c46a66b6 Home & Garden $264.71 194 0.8 11 BULK-14e8bee3
16252 Bulk Product 1ab18e0f Home & Garden $1,008.21 202 1.0 15 BULK-d1ca20f6
16253 Bulk Product 81c75bec Clothing $100.47 198 3.4 27 BULK-2e0f32a3
16254 Bulk Product b16c896d Clothing $84.44 290 2.5 76 BULK-251b9329
16255 Bulk Product 48e68c76 Books $210.89 453 0.9 22 BULK-20e57f74
16256 Bulk Product 021f3adf Books $711.23 99 2.6 36 BULK-e6bac9d6
16257 Bulk Product d6f6c26c Sports & Outdoors $640.86 257 0.8 57 BULK-4202e6c4
16258 Bulk Product a5da0763 Books $170.88 137 2.8 87 BULK-74301915
16259 Bulk Product ed6d4370 Electronics $992.71 204 3.7 58 BULK-8fa41a33
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