Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server代码未并行执行_Sql_Sql Server_Parallel Processing - Fatal编程技术网

SQL Server代码未并行执行

SQL Server代码未并行执行,sql,sql-server,parallel-processing,Sql,Sql Server,Parallel Processing,哪些SQL函数确切地抑制了SQL Server中的并行性?我询问是因为我正在尝试运行以下查询: SELECT SUM(_dt7) AS _dt7, SUM(_dt8) AS _dt8, SUM(_FPRecCount) as _FPRecCount, _FPBucket FROM ( SELECT _dt7,_dt8, 1 as _FPRecCount, (CAST(ABS(CHECKSUM(_ID)) as INT) % 5)+1 AS _FPBucket FROM [E

哪些SQL函数确切地抑制了SQL Server中的并行性?我询问是因为我正在尝试运行以下查询:

SELECT  SUM(_dt7) AS _dt7, SUM(_dt8) AS _dt8, SUM(_FPRecCount) as _FPRecCount, _FPBucket 
FROM (
    SELECT _dt7,_dt8, 1 as _FPRecCount, (CAST(ABS(CHECKSUM(_ID)) as INT) % 5)+1 AS _FPBucket 
    FROM [Example Database].[dbo].[_FP_Longer Test Data (Long)] 
    WHERE (1=1 AND (3=3 ) AND 2=2)
    ) AS q 
GROUP BY _FPBucket
但执行计划似乎从来都不想并行执行,总是串行执行

我想知道是不是
CAST()
ABS()
CHECKSUM()
函数阻止了它

本文

以及它提到的文件

两者都暗指“随机内在函数”抑制并行性,但并没有给出完整的列表

以下是执行计划的内容:


在马丁·史密斯的协助下,该计划没有并行执行的原因是

NonParallelPlanReason="NoParallelPlansInDesktopOrExpressEdition"

可以在执行计划XML中找到。

并行性对您意味着什么,您是如何注意到代码不是并行运行的?请逐个注释函数,看看哪些函数排除了并行性。@mikemorris-添加了执行计划图像。没有“parallelism”节点。您可以指定执行计划中第一个运算符的“Subtree cost”属性值吗?我不希望parallelism可以提高运行时间tbh,但最好有一个并行计划来测试这一点。什么版本的SQL Server?执行计划XML是否包含非并行计划原因