小编Eva*_*yne的帖子

为什么这个执行计划中排序运算符的成本如此之高?

执行计划

Sort运算表示只有 100 行需要排序。这怎么可能比读取 190 万行更昂贵呢?我一定是读错了或者误解了某些东西。

另外,排序运算符中每次执行的估计行数为何只有 100?如果Index Seek运算符估计每次执行的行数为 190 万行,那么如何仅将 100 行传送到 Sort 运算符呢?

这是查询:

    DECLARE @PageIndex INT = 1000;
    DECLARE @PageCount INT  = 1000;

    SELECT  ID
    FROM    dbo.Table1
    WHERE DateCreated >= '2021-10-27'
            AND
        DateCreated < '2021-10-28'
    ORDER BY ID
        OFFSET @PageIndex * @PageCount ROWS FETCH NEXT @PageCount ROWS ONLY 
Run Code Online (Sandbox Code Playgroud)

sql-server query-optimization

2
推荐指数
1
解决办法
608
查看次数

标签 统计

query-optimization ×1

sql-server ×1