Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

16 ms

Page Size

50

Current Page

387 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 387 Results Showing 19301 - 19350 of 24441

ID Name Category Price Stock Rating Reviews SKU
19860 Bulk Product 555dde41 Home & Garden $250.23 72 1.1 97 BULK-f6f7a755
19861 Bulk Product 97ed1e3a Sports & Outdoors $766.81 437 1.0 44 BULK-6f66deca
19862 Bulk Product 839466af Books $272.09 294 2.2 57 BULK-980ec95f
19863 Bulk Product 08d2976c Electronics $137.79 143 0.8 2 BULK-378c46d4
19864 Bulk Product affbd540 Home & Garden $281.95 216 3.8 47 BULK-6b6ecaa5
19865 Bulk Product 32bdc2b3 Home & Garden $449.11 465 1.3 95 BULK-fdee6d7c
19866 Bulk Product ae3733a2 Toys & Games $572.25 383 0.3 78 BULK-badf3cf4
19867 Bulk Product b6422d53 Clothing $290.14 75 4.4 55 BULK-e5796cc1
19868 Bulk Product 810df8c7 Books $279.32 316 1.2 43 BULK-4e91177d
19869 Bulk Product 4b5fe02e Home & Garden $594.92 298 0.5 19 BULK-b6670bf4
19870 Bulk Product b5da8d89 Home & Garden $453.27 122 1.5 94 BULK-1e614e19
19871 Bulk Product 30a4eb03 Sports & Outdoors $866.02 252 1.2 59 BULK-a191084d
19872 Bulk Product 28763b49 Home & Garden $659.22 403 2.9 59 BULK-502c2420
19873 Bulk Product 671b285e Clothing $935.12 460 4.2 31 BULK-cd7a109e
19874 Bulk Product 5e91a10d Books $492.51 493 4.7 48 BULK-4ee3bf0a
19875 Bulk Product 53c8e014 Electronics $189.45 11 1.4 94 BULK-5ed18321
19876 Bulk Product eb5dd840 Electronics $279.19 490 3.3 35 BULK-d853fe08
19877 Bulk Product a8e4c1e1 Home & Garden $995.98 203 1.8 99 BULK-d013af19
19878 Bulk Product acf3fe29 Sports & Outdoors $65.19 231 1.0 15 BULK-99eaa2ee
19879 Bulk Product 87352fe0 Home & Garden $500.50 291 0.9 26 BULK-4fa690b0
19880 Bulk Product 2adac319 Clothing $598.11 292 4.0 38 BULK-cd55f484
19881 Bulk Product d1f28d91 Toys & Games $617.38 415 4.6 81 BULK-6f799c06
19882 Bulk Product 5c1885e4 Toys & Games $35.43 219 0.6 13 BULK-a6d28806
19883 Bulk Product ce2633bc Electronics $222.55 270 4.0 21 BULK-a96ed0a4
19884 Bulk Product d28d2561 Books $296.33 412 2.8 32 BULK-a176f138
19885 Bulk Product c1844824 Toys & Games $24.49 63 2.4 80 BULK-9da79ba6
19886 Bulk Product 7f1f4756 Sports & Outdoors $551.71 313 2.6 35 BULK-5dbfcd72
19887 Bulk Product 2e46e00f Books $218.22 498 4.4 72 BULK-ee8d1358
19888 Bulk Product a7624b6a Toys & Games $843.16 382 0.2 50 BULK-28052bdb
19889 Bulk Product 91170f55 Clothing $747.80 339 2.6 90 BULK-42a74970
19890 Bulk Product 6be5a774 Electronics $622.52 456 0.5 54 BULK-7c5eccb2
19891 Bulk Product 21d103e7 Books $922.51 320 0.5 50 BULK-6872ed74
19892 Bulk Product cb7067f9 Home & Garden $882.12 244 0.0 34 BULK-43e911a0
19893 Bulk Product 8ba79e99 Electronics $32.72 233 2.0 17 BULK-371c9562
19894 Bulk Product c8069233 Clothing $971.33 442 1.7 23 BULK-260c9827
19895 Bulk Product 8e36d2cd Sports & Outdoors $765.26 379 4.1 38 BULK-8834a1d4
19896 Bulk Product 320400a3 Home & Garden $593.26 66 2.8 42 BULK-02b78e26
19897 Bulk Product b70dd52b Books $237.90 173 3.6 55 BULK-b936aed4
19898 Bulk Product 30cdbf8a Home & Garden $706.29 108 4.7 30 BULK-9f6c7290
19899 Bulk Product 22c7e54b Home & Garden $898.72 309 4.8 45 BULK-3f99d222
19900 Bulk Product 1e5fc0c8 Books $969.19 488 3.9 8 BULK-7d6ab177
19901 Bulk Product 418e50a8 Home & Garden $652.67 113 2.8 4 BULK-75b938f2
19902 Bulk Product 78aa2458 Clothing $511.26 171 0.2 27 BULK-57d4deb8
19903 Bulk Product f80fcf46 Home & Garden $18.72 363 1.5 79 BULK-02c3e357
19904 Bulk Product a10a44b8 Electronics $292.61 217 2.8 53 BULK-8d83ff93
19905 Bulk Product 972e6f86 Toys & Games $746.95 453 0.8 1 BULK-5e56ebf2
19906 Bulk Product 441ccec5 Sports & Outdoors $717.37 177 0.8 95 BULK-5446821a
19907 Bulk Product a144dd40 Home & Garden $547.34 359 3.9 76 BULK-dc43856a
19908 Bulk Product 1578cbad Clothing $560.15 397 0.4 22 BULK-b5c991fe
19909 Bulk Product 0cd4f446 Home & Garden $595.36 68 0.6 90 BULK-5bc19392
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