Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

110 ms

Page Size

50

Current Page

448 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 448 Results Showing 22351 - 22400 of 24441

ID Name Category Price Stock Rating Reviews SKU
22910 Bulk Product c4bbee81 Clothing $505.40 423 3.7 38 BULK-5e83fb1f
22911 Bulk Product fc5f62ec Home & Garden $593.56 408 2.0 64 BULK-f100afd8
22912 Bulk Product b8dbb596 Home & Garden $575.00 240 1.3 18 BULK-9ba0064d
22913 Bulk Product 5d537553 Toys & Games $269.37 470 0.2 35 BULK-a2d28379
22914 Bulk Product d8025f2f Sports & Outdoors $974.21 220 0.3 57 BULK-0c41d7af
22915 Bulk Product b5b38a4e Electronics $528.84 186 0.7 3 BULK-a4cd3849
22916 Bulk Product cfc8c62e Electronics $1,006.46 395 4.4 51 BULK-7e5abff9
22917 Bulk Product e8ad70e0 Sports & Outdoors $465.06 251 3.7 49 BULK-87353733
22918 Bulk Product 7c7079f0 Home & Garden $834.91 422 3.4 73 BULK-75633678
22919 Bulk Product b14256a5 Electronics $481.86 225 4.4 24 BULK-c5ef576f
22920 Bulk Product 79c23208 Clothing $127.46 339 0.6 91 BULK-0235b8c2
22921 Bulk Product 1da08d50 Books $703.30 25 2.8 26 BULK-7754d0c2
22922 Bulk Product 0336662e Home & Garden $189.07 64 0.7 0 BULK-689f90b4
22923 Bulk Product 68cbd3d6 Toys & Games $10.76 33 2.4 44 BULK-386e2e4b
22924 Bulk Product 235717d3 Home & Garden $255.44 226 3.1 8 BULK-f130db6a
22925 Bulk Product d47f93bb Electronics $414.69 227 3.7 56 BULK-cf959298
22926 Bulk Product 0b6d7c35 Books $933.70 36 0.2 56 BULK-c23ad07d
22927 Bulk Product 8be111aa Toys & Games $726.68 285 2.6 99 BULK-70f1b4a5
22928 Bulk Product 20bf5ee5 Home & Garden $830.43 229 1.3 9 BULK-06a50480
22929 Bulk Product 5feb5213 Toys & Games $453.90 72 3.2 90 BULK-275aeb2f
22930 Bulk Product a52a17f3 Sports & Outdoors $524.34 271 2.3 36 BULK-08fe2f16
22931 Bulk Product bc1c8620 Home & Garden $535.19 33 3.0 2 BULK-09fba6ce
22932 Bulk Product c55b4e12 Home & Garden $655.98 12 4.2 66 BULK-1b80477e
22933 Bulk Product 2c17bd73 Toys & Games $741.66 442 1.8 75 BULK-e73cf40e
22934 Bulk Product 6a097a04 Books $280.61 53 3.2 64 BULK-e914ec47
22935 Bulk Product 53f880f6 Home & Garden $806.86 344 1.1 34 BULK-202dcfd6
22936 Bulk Product 3d1425c3 Books $673.13 197 2.6 74 BULK-69e59027
22937 Bulk Product 1dcc3349 Home & Garden $384.02 88 1.5 4 BULK-8861ccaa
22938 Bulk Product fa015074 Sports & Outdoors $661.48 464 1.4 85 BULK-8bbaebea
22939 Bulk Product cbc770d0 Books $192.74 473 0.3 87 BULK-d089c35d
22940 Bulk Product b2b338d5 Clothing $337.09 215 2.3 5 BULK-e5f399c2
22941 Bulk Product 2a28a027 Electronics $751.83 171 1.7 88 BULK-933ca73f
22942 Bulk Product ea36a8c3 Electronics $998.41 470 4.1 93 BULK-8ae5739a
22943 Bulk Product 5ef9b416 Sports & Outdoors $729.69 497 1.4 74 BULK-c806a371
22944 Bulk Product 39098860 Electronics $272.04 258 3.9 4 BULK-8f4923f2
22945 Bulk Product 94b196ec Home & Garden $731.83 211 3.4 79 BULK-cf404d6b
22946 Bulk Product 84f37e54 Electronics $151.51 116 2.5 77 BULK-9d5bb89d
22947 Bulk Product 64808320 Books $365.47 116 3.8 89 BULK-8212e4dc
22948 Bulk Product 54958b17 Clothing $603.25 98 3.7 71 BULK-1b60250a
22949 Bulk Product 7ff21faf Home & Garden $885.06 63 3.2 93 BULK-02735574
22950 Bulk Product 83393223 Toys & Games $460.56 210 0.0 64 BULK-0398d728
22951 Bulk Product d874b0a8 Sports & Outdoors $44.00 308 3.3 20 BULK-67980398
22952 Bulk Product d7dc507e Home & Garden $145.02 388 3.9 83 BULK-94a58e2c
22953 Bulk Product 16c0455a Books $298.20 400 4.2 38 BULK-d4845e8e
22954 Bulk Product a7edbf39 Toys & Games $1,002.25 9 2.8 81 BULK-31abbc6d
22955 Bulk Product 4c6abac4 Toys & Games $153.38 184 2.2 51 BULK-25a4119e
22956 Bulk Product 22d586fe Clothing $255.72 79 5.0 65 BULK-85fae57d
22957 Bulk Product 2fed60ae Books $486.80 358 1.0 7 BULK-1f0deb8e
22958 Bulk Product c40152e4 Toys & Games $924.19 219 3.9 29 BULK-fc25539b
22959 Bulk Product 0d9a7892 Clothing $418.57 436 1.5 40 BULK-1acd29dd
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