sql-server - SQL 2019 上的 CU6 到 CU 11 升级使对表格函数的查询非常慢
问题描述
从 SQL server 2019 CU6 升级到 CU11 后:下面标有 --Slow running 查询突然变慢的查询。CD_TF() 包含对另一个 TF 的 OUTER APPLY。
IF(OBJECT_ID('tempdb..#BrowseList1') IS NOT NULL)
DROP TABLE #BrowseList1
CREATE TABLE #BrowseList1
(
RowNumber dbo.ecm_RowNumber_DT IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED
,OrderId dbo.ecm_OrderId_DT
,OrderGroupId dbo.ecm_OrderGroupId_DT
,InterfaceId dbo.ecm_InterfaceId_DT
);
INSERT INTO #BrowseList1(OrderId,OrderGroupId,InterfaceId)
SELECT OrderId,OrderGroupId,InterfaceId FROM AB_TF()
WHERE ( HolderId = N'1' ) ORDER BY OrderGroupId ASC;
--Slow running query
SELECT o.*
FROM CD_TF() AS o
INNER JOIN
#BrowseList1 AS browser ON (o.OrderId = browser.OrderId AND o.OrderGroupId = browser.OrderGroupId AND o.InterfaceId = browser.InterfaceId)
解决方案
推荐阅读
- php - Laravel 动态数据库关系
- scala - 如何配置 IntelliJ Scala 插件以使用 Scala 的本机演示编译器?
- python - 从字符串中提取数组
- kubernetes - 使用 gitlab runner 部署 K8s 时出现问题,出现错误
- android - Flutter Webview - 在 Android 上捕获 touchstart 事件
- angular - Rxjs Behavior Subject 值改变而不调用 next
- sql - 静态分析:分析时发现2个错误。SQL 错误
- filter - 我可以在 kafka 流应用程序的 peek 或 filter 或分支中做一些有状态的操作吗?
- r - 出现此错误,如何在 r 中编织到 html?
- scala - No implicits found for parameter evidence