相同表的查询成本显示SQL Server中的巨大差异

问题描述 投票:-1回答:1

相同表的查询成本在SQL Server中显示出巨大的差异。

我的解决方案中有两个表,它们的行数和数据量几乎相同。但是,当我们比较查询成本时,它显示出巨大的差异。当我们将第二张表与任何其他表连接在一起时,执行时间非常高,有些时候是两倍。

表均具有主列和相关索引。

查询成本:表1成本-23%,表2成本-77%

行数:表1行– 668458(总大小[[909.45 MB),表2行– 697306(总大小877.89

Query Execution Cost

Table occupied size


[C0的结果]

表1

SET STATISTICS IO/SET STATISTICS TIME

表2

SQL Server parse and compile time: CPU time = 0 ms, elapsed time = 1 ms. (687841 row(s) affected) SQL Server Execution Times: CPU time = 3750 ms, elapsed time = 6501 ms. (687841 row(s) affected) Table 'ClaimReferenceDetails'. Scan count 1, logical reads 8827, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

sql-server sql-execution-plan sqlperformance
1个回答
0
投票
表1SQL Server解析和编译时间:CPU时间= 0毫秒,经过的时间= 1毫秒。

(受影响的687841行)SQL Server执行时间:CPU时间= 3750毫秒,经过的时间= 6501毫秒。

(受影响的687841行)表“ ClaimReferenceDetails”。扫描计数1,逻辑读8827,物理读0,预读0,lob逻辑读0,lob物理读0,lob预读0。

表2SQL Server解析和编译时间:CPU时间= 0毫秒,经过的时间= 0毫秒。

(受影响的660236行)

SQL Server执行时间:CPU时间= 7125毫秒,经过的时间= 14358毫秒。(受影响的660236行)

表'ClaimTransactions'。扫描计数1,逻辑读29507,物理读0,预读0,lob逻辑读0,lob物理读0,lob预读0。

© www.soinside.com 2019 - 2024. All rights reserved.