WEB开发网
开发学院数据库MSSQL Server T-SQL命令在SQL Server查询中的运用 阅读

T-SQL命令在SQL Server查询中的运用

 2006-08-05 09:15:32 来源:WEB开发网   
核心提示: Scan Count:在查询中涉及到的表被访问的次数,在我们的例子中,T-SQL命令在SQL Server查询中的运用(6),其中的表只被访问了1次,由于查询中不包括连接命令,一个查询使用的逻辑读越少,其效率就越高,这一信息并不是十分有用,但如果查询中包含有一个或多个连接

Scan Count:在查询中涉及到的表被访问的次数。在我们的例子中,其中的表只被访问了1次,由于查询中不包括连接命令,这一信息并不是十分有用,但如果查询中包含有一个或多个连接,则这一信息是十分有用的。

一个循环外部的表的Scan Count值为1,但对于一个循环内的表而言,其值为循环的次数。可以想象得到,对于一个循环内的表而言,其Scan Count值越小,它所使用的资源越少,查询的性能也就越高。因此在调节一个带连接的查询的性能时,需要关注Scan Count的值,在进行调节时,注意观察它是增加还是减少了。

Logical Reads: 这是SET STATISTICS IO或SET STATISTICS TIME命令提供的最有用的数据。我们知道,SQL Server在可以对任何数据进行操作前,必须首先把数据读取到其数据缓冲区中。此外,我们也知道SQL Server何时会从数据缓冲区中读取数据,并把数据读取到大小为8K字节的页中。

那么Logical Reads的意义是什么呢?Logical Reads是指SQL Server为得到查询中的结果而必须从数据缓冲区读取的页数。在执行查询时,SQL Server不会读取比实际需求多或少的数据,因此,当在相同的数据集上执行同一个查询,得到的Logical Reads的数字总是相同的。

为什么说在调节查询性能中知道SQL Server执行查询时的Logical Reads值是很重要的呢?因为在每次执行同一查询时,这个数值是不会变化的。因此,在进行查询性能的调节时,这是一个可以用来衡量你的调节措施是否成功的一个很好的标准。

在对查询的性能进行调节时,如果Logical Reads值下降,就表明查询使用的服务器资源减少,查询的性能有所提高。如果Logical Reads值增加,则表示调节措施降低了查询的性能。在其他条件不变的情况下,一个查询使用的逻辑读越少,其效率就越高,查询的速度就越快。

上一页  1 2 3 4 5 6 7  下一页

Tags:SQL 命令 SQL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接