症状
请考虑以下情况:
-
在 Microsoft SQL Server 2016 中,你可以运行使用 SQL Server 2016 查询处理器功能的查询。 例如,在批处理模式下运行排序运算符。
-
与在行模式下运行相同的排序运算符相比,你体验查询性能有所降低。
-
若要解决此问题,请尝试在会话级别启用跟踪标记9347或使用 QUERYTRACEON。 你可以执行此操作以禁用批处理模式排序。
在此方案中,排序运算符仍以批处理模式运行,并忽略会话级别或查询级跟踪标记。
解决方案
在 SQL Server 2016 中,你可以使用跟踪标记9347强制排序运算符在行模式下运行,而不是在批处理模式下执行。 对 SQL Server 2016 应用累积更新 1之后,你可以在会话级别或查询级别成功启用跟踪标记9347。 你还可以在服务器级别、会话级别或查询级别全局启用此跟踪标志。 注意 不正确地使用跟踪标记可能会降低工作负荷性能。 有关详细信息,请参阅以下 Microsoft 知识库文章的 "简介" 部分: 2801413 启用计划影响的 SQL Server 查询优化程序行为,该行为可由特定查询级别上的不同跟踪标记控制
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语 。