>  本文通過詳細(xì)分析一個示例來說明SEEK、SCAN等操作的用法和效果,供大家參考!  入門指南  讓我們以一個簡單的例子幫助你理解如何閱讀查詢計劃,可以通過發(fā)出SETSHObig_salesSEL">
理解sql server的sql查詢計劃--

理解sql server的sql查詢計劃--

ID:9732568

大?。?4.50 KB

頁數(shù):13頁

時間:2018-05-06

理解sql server的sql查詢計劃--_第1頁
理解sql server的sql查詢計劃--_第2頁
理解sql server的sql查詢計劃--_第3頁
理解sql server的sql查詢計劃--_第4頁
理解sql server的sql查詢計劃--_第5頁
資源描述:

《理解sql server的sql查詢計劃--》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、理解SQLServer的SQL查詢計劃>>  本文通過詳細(xì)分析一個示例來說明SEEK、SCAN等操作的用法和效果,供大家參考!  入門指南  讓我們以一個簡單的例子幫助你理解如何閱讀查詢計劃,可以通過發(fā)出SETSHObig_salesSELECTord_dateFROMbig_salesStmtText-------------------------------------------------------------------------

2、--ClusteredIndexScan(OBJECT:([pubs].[dbo

3、].[big_sales].[UPKCL_big_sales]))  上面的查詢展示返回的數(shù)據(jù)量非常不同,所以小結(jié)果集(ord_date)的查詢比其它查詢運行更快,這只是因為存在大量底層的I/O。然而,這兩個查詢計劃實際上是一樣的。你可以通過使用其它索引提高性能。例如,在title_id列上有一個非聚集索引存在:SELECTtitle_idFROMbig_salesStmtText------------------------------------------------------------------

4、--Index

5、Scan(OBJECT:([pubs].[dbo].[big_sales].[ndx_sales_ttlID]))  上面的查詢的執(zhí)行時間與SELECT*查詢相比非常小,這是因為可以從非聚集索引即可得到所有結(jié)果。該類查詢被稱為coveringquery(覆蓋查詢),因為全部結(jié)果集被一個非聚集索引所覆蓋?! EEK與SCAN  第一件事是你需要在查詢計劃中區(qū)別SEEK和SCAN操作的不同?! ∽⒁猓阂粋€簡單但非常有用的規(guī)則是SEEK操作是有效率的,而SCAN操作即使不是非常差,其效率也不是很好。SEEK操作是直接的,或者至少是

6、快速的,而SCAN操作需要對整個對象進行讀取(表,聚集索引或非聚集索引)。因此,SCAN操作通常比SEEK要消耗更多的資源。如果你的查詢計劃僅是掃描操作,你就應(yīng)該考慮調(diào)整你的查詢了?! ig_salestText-----------------------------------------------------------------------------

7、--ClusteredIndexSeek(OBJECT:([pubs].[dbo].[big_sales].[UPKCL_big_sales])),SEEK:([

8、big_sales].[stor_id]={1}ORDEREDFORbig_salestText------------------------------------------------------------------------------

9、-ClusteredIndexSeek(OBJECT:([pubs].[dbo].[big_sales].[UPKCL_big_sales]),SEEK:([big_sales].[stor_id]>=7131)ORDERFORbig_salesWherestor_idb

10、ettText------------------------------------------------------------------------------

11、-ClusteredIndexSeek(OBJECT:([pubs].[dbo].[big_sales].[UPKCL_big_sales]),SEEK:([big_sales].[stor_id]>=7066and([big_sales].[stor_id]<=7131)ORDERFORWARD)  這個看起來也一樣。只是查找謂詞改變了。因為查

12、找是非??斓模赃@個查詢是相當(dāng)好的?! EEK和SCAN也可包含Where謂詞。在這種情況下,這個謂詞告訴你Where子句從結(jié)果集中過濾出哪些記錄。因為它是作為SEEK或SCAN的一個組件執(zhí)行的,Where子句通常既不損害也不提高這個操作本身的性能。Whe1234下一頁>>>>這篇文章來自..,。re子句會幫助查詢優(yōu)化器找到可能有最佳性能的索引?! 〔樵儍?yōu)化的一個重要部分是要確定是否在某個索引上執(zhí)行SEEK操作,如果是這樣,就找到了具有最佳性能的索引。大部分情況下,查詢引擎能出色地查找到存在的索引。但是,目前有三種涉及到索

13、引的常見問題:  ◆數(shù)據(jù)庫設(shè)計師,通常是應(yīng)用開發(fā)者,在表中沒有建立任何索引?!  魯?shù)據(jù)庫設(shè)計師通常猜測不到常用的查詢或事務(wù)類型,所以建立在表上的索引或主鍵往往效率不高?!  舢?dāng)索引表被創(chuàng)建時,即使數(shù)據(jù)庫設(shè)計師猜測較準(zhǔn),但事務(wù)負(fù)載隨著時間將發(fā)生改變,使得這些索引效率變差?! ∪?/p>

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。