程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server中統計對查詢有什麼影響

SQL Server中統計對查詢有什麼影響

編輯:關於SqlServer

簡介

SQL Server查詢分析器是基於開銷的。通常來講,查詢分析器會根據謂詞來確定該如何選擇高效的查詢路線,比如該選擇哪個索引。而每次查詢分析器尋找路徑時,並不會每一次都去統計索引中包含的行數,值的范圍等,而是根據一定條件創建和更新這些信息後保存到數據庫中,這也就是所謂的統計信息。

如何查看統計信息

查看SQL Server的統計信息非常簡單,使用如下指令:

DBCC SHOW_STATISTICS('表名','索引名')

所得到的結果如圖1所示。

圖1.統計信息

統計信息如何影響查詢

下面我們通過一個簡單的例子來看統計信息是如何影響查詢分析器。我建立一個測試表,有兩個INT值的列,其中id為自增,ref上建立非聚集索引,插入100條數據,從1到100,再插入9900條等於100的數據。圖1中的統計信息就是示例數據的統計信息。

此時,我where後使用ref值作為查詢條件,但是給定不同的值,我們可以看出根據統計信息,查詢分析器做出了不同的選擇,如圖2所示。

圖2.根據不同的謂詞,查詢優化器做了不同的選擇

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved