您好,登錄后才能下訂單哦!
本篇內容介紹了“SQL Server新老版本CE區別有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
對比CE7和2014 CE12的區別:
1.表連接中連接列估算方式
老CE對所有參與連接列的統計信息step進行逐個估算。新CE只對于最大和最小step統計信息進行收集估算,在連接列的值分布不均勻的時候,老CE擁有更準確的估算。
2.對于where語句多條件估算
老CE認為各個條件獨立計算,不存在相關性,估算結果以選擇性最高的條件單獨為標準,新CE估算方式是條件1選擇性sqrt(條件2選擇性)sqrt(sqrt(條件3選擇性)) ,其中條件1 選擇性>條件2>條件3,這種相關估計對于多條件語句,新CE有更準確的估計。
3.where條件超越統計信息邊界的估算
老CE針對where條件超越統計信息邊界的估算簡單的使用統計信息邊界step對應的值進行估算, 而新CE采用的行總數*行密度的方式估算,更加準確。
4.連接條件on中含有多條件等值連接的估算
老CE使用單條件列的選擇性進行簡單相乘的方式,值往往偏小,新CE采用對兩個條件列去重復后較小的列乘以連接兩個表的平均密度,估算值偏大。
5.多條件非等值連接估算。
老CE簡單對于連接條件列的選擇率相乘,估算值偏低,新CE假設連接是小表對大表一對多的關系,并以大表的輸入估算值計算,估算值偏高。
6.非連接條件列估算:
老CE認為非連接條件列相互獨立,選取較大估算值的條件列并認為同時符合連接兩端,估計值偏高,新CE認為不同表的非連接條件不相關,先進行連接選擇性估算, 之后再應用非連接條件列過濾。
7.連接后去重復操作(distinct,group by)
老CE在去重之前進行多對多的連接估算,估值偏高,而新CE首先進行去重之后再用較小結果進行連接估算。
“SQL Server新老版本CE區別有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。