Efficient Pagination with Skip/Take

Efficient pagination using OFFSET-FETCH on SQL Server.

Execution Time

56 ms

Page Size

50

Current Page

306 / 489

Total Records

24441

Items per page: 25 50 100 200

Page 306 Results Showing 15251 - 15300 of 24441

ID Name Category Price Stock Rating Reviews SKU
15810 Bulk Product a7e2c2ea Home & Garden $244.59 273 2.7 87 BULK-48073f32
15811 Bulk Product 747ac9f7 Home & Garden $841.55 103 3.8 70 BULK-95986572
15812 Bulk Product bb0cd8c3 Home & Garden $634.50 29 2.8 44 BULK-eaeaa099
15813 Bulk Product ef10ac09 Toys & Games $916.18 352 1.3 3 BULK-2a5ff5ea
15814 Bulk Product 180ea791 Home & Garden $813.36 437 3.4 39 BULK-5416847f
15815 Bulk Product 35683925 Clothing $263.08 217 0.4 0 BULK-d422be39
15816 Bulk Product 0a9be595 Clothing $11.83 44 0.8 25 BULK-96e98a97
15817 Bulk Product 7c2d3420 Clothing $432.35 397 4.6 96 BULK-31dfde2b
15818 Bulk Product 8fa59f53 Electronics $306.82 168 0.4 91 BULK-6b42ebfe
15819 Bulk Product 886a9b34 Toys & Games $370.41 411 1.2 97 BULK-306b111a
15820 Bulk Product bcf0ff16 Sports & Outdoors $643.60 345 0.6 78 BULK-04492d9a
15821 Bulk Product 2d6cfac8 Books $374.30 56 4.7 80 BULK-a56e022d
15822 Bulk Product fd8a693b Books $862.03 341 4.0 78 BULK-011305e6
15823 Bulk Product f885df92 Sports & Outdoors $956.57 175 3.2 76 BULK-72f0b955
15824 Bulk Product 5319ae33 Home & Garden $813.86 76 1.6 90 BULK-1c27e4b3
15825 Bulk Product 24a7a03a Home & Garden $140.87 128 2.2 33 BULK-73b69529
15826 Bulk Product 7b190c49 Books $23.35 433 3.2 17 BULK-a512a22c
15827 Bulk Product 687c57a5 Home & Garden $661.27 398 4.7 48 BULK-724e056b
15828 Bulk Product 74150d2a Toys & Games $308.74 164 3.8 69 BULK-e46781d9
15829 Bulk Product 8598c328 Sports & Outdoors $221.97 402 2.2 36 BULK-931cc762
15830 Bulk Product bbb7934e Books $101.98 340 1.4 9 BULK-093791ba
15831 Bulk Product 69285af0 Sports & Outdoors $396.79 168 2.1 65 BULK-c8c39db7
15832 Bulk Product 8d3abc38 Clothing $841.97 432 0.8 94 BULK-d12c32d6
15833 Bulk Product dbe7bde8 Clothing $850.21 228 4.1 46 BULK-6b7f4da4
15834 Bulk Product 7472cc8e Toys & Games $530.05 371 4.1 75 BULK-ec145cd1
15835 Bulk Product 3f4112f1 Sports & Outdoors $192.62 464 2.0 31 BULK-cf691dba
15836 Bulk Product 2cc77349 Home & Garden $822.74 441 1.8 18 BULK-3bc00614
15837 Bulk Product 4eefe7f0 Toys & Games $574.09 369 1.6 32 BULK-ee847291
15838 Bulk Product 2b99026c Electronics $539.14 254 3.0 18 BULK-1f084755
15839 Bulk Product 2cc16fb4 Sports & Outdoors $889.88 36 4.2 52 BULK-6fa89fd9
15840 Bulk Product e143f079 Books $554.86 253 2.0 64 BULK-d0ff2e34
15841 Bulk Product 940d752d Clothing $606.82 246 2.8 74 BULK-722b6281
15842 Bulk Product bbb10787 Electronics $497.64 499 2.5 19 BULK-46348976
15843 Bulk Product 46085497 Home & Garden $773.12 102 3.8 99 BULK-06790705
15844 Bulk Product 4c5214fd Sports & Outdoors $219.55 72 2.8 43 BULK-9b938c77
15845 Bulk Product e3e83588 Toys & Games $473.81 61 1.5 38 BULK-dcbf7c25
15846 Bulk Product c95aff9f Electronics $116.37 150 4.0 50 BULK-d09eccdc
15847 Bulk Product d776378d Electronics $464.27 437 2.9 17 BULK-fb56af8f
15848 Bulk Product bd986b8d Home & Garden $824.50 62 4.2 59 BULK-5b8278ff
15849 Bulk Product f51513c2 Sports & Outdoors $317.34 245 3.2 3 BULK-709cde40
15850 Bulk Product 182e3abd Toys & Games $831.51 214 3.1 40 BULK-2ec938ca
15851 Bulk Product 1184ab32 Books $126.54 206 3.2 48 BULK-cfcefca6
15852 Bulk Product a78f8702 Books $269.46 297 2.0 23 BULK-a7f07cfb
15853 Bulk Product 2ce21a01 Home & Garden $494.56 9 1.8 98 BULK-e6d8bdfd
15854 Bulk Product 8d59562b Books $851.87 444 2.9 68 BULK-1349664e
15855 Bulk Product fdeb3d2d Electronics $442.80 302 2.0 70 BULK-ec2b9e9c
15856 Bulk Product 58d8991b Electronics $505.02 411 4.7 48 BULK-1dba12ce
15857 Bulk Product 6d9c653a Toys & Games $981.02 35 3.2 84 BULK-30f9a5f6
15858 Bulk Product 0b3e301f Electronics $855.32 423 2.1 38 BULK-653f8885
15859 Bulk Product 1511031d Electronics $409.16 269 2.2 45 BULK-11f3dbcf
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