成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server 2008邏輯查詢的處理步驟有哪些?

數據庫 SQL Server
我們今天主要向大家描述的是SQL Server 2008邏輯查詢的正確而處理步驟,以下就是文章的主要內容的詳細描述,望大家會對其有更好的了解。

此文章主要向大家講述的是SQL Server 2008邏輯查詢的正確而處理步驟,大家是否對《SQL Server 2005技術內幕T-SQL查詢》 有所了解,博文組織翻譯的,作者是SQL Server數據庫方面的MVP Kalen Delaney)。

最近我則剛剛收到了微軟最有價值專家項目組寄來的該書的SQL Server 2008英文版本-《Inside Microsoft SQL Server 2008:T-SQL Querying》(http://www.microsoft.com/learning/en/us/book.aspx?ID=12804&locale=en-us),大致翻了一下,發現內容變動不少,既有新增的章節,也有基于SQL Server 2005或2008新技術重新書寫的SQL查詢示例。

SQL Server 2008邏輯查詢處理步驟方面給大家介紹一下兩本書之間的差異吧,因為我也在剛開始閱讀,以后逐步給大家介紹。

我們知道,查詢的邏輯處理過程是分階段完成的,每個階段都會產生一個虛擬表,該虛擬表會作為下一個階段的輸入。但是,這些過程中間階段生成的虛擬表對于查詢用戶是不可用的,只有***階段所生成的虛擬表(即查詢結果)才返回給查詢用戶。

在該書的SQL Server 2005版本中,將一個聯接查詢的邏輯SQL Server 2008邏輯查詢處理分為了10個步驟:

(8) SELECT (9) DISTINCT (11) <TOP_specification> <select_list>

(1) FROM <left_table>

(3) <join_type> JOIN <right_table>

(2) ON <join_condition>

(4) WHERE <where_condition>

(5) GROUP BY <group_by_list>

(6) WITH {CUBE | ROLLUP}

(7) HAVING <having_condition>

(10) ORDER BY <order_by_list>

而在SQL Server 2008版本中,則對邏輯階段的描述擴展到了所有的邏輯語句,而不僅僅是聯接SQL Server 2008邏輯查詢處理,如APPLY、PIVOT等。按這種分類方式,將邏輯步驟分成了6部分,部分步驟中包含了子步驟。

(5)SELECT (5-2)DISTINCT (5-3)<TOP_specification> (5-1)<select_list>

(1)FROM (1-J) <left_table> <join_type> JOIN <right_table> ON <join_condition>

|(1-A) <left_table> <apply_type> APPLY <right_table_expression> AS <alias>

|(1-P) <left_table> PIVOT(<pivot_specifications>) AS <alias>

|(1-U) <left_table> UNPIVOT(<unpivot_specifications>) AS <alias>

(2)WHERE <where_condition>

(3)GROUP BY <group_by_list> (3-CR)WITH {CUBE | ROLLUP}

(4)HAVING <having_condition>

(6)ORDER BY <order_by_list>

下圖更詳細地描述了各個SQL Server 2008邏輯查詢處理步驟的流程。

這種步驟分類相比2005版本而言更加全面和具體。上面步驟中的3-CR是我添加上去的,我覺得這樣的描述更加全面。3-CR中的WITH ROLLUP和WITH CUBE參數,在SQL Server 2008中已經被GROUP BY子句的GROUPING SETS、ROLLUP和CUBE運算符代替,不再推薦使用不符合ISO標準的WITH ROLLUP、WITH CUBE和ALL語法。但是,這并不影響邏輯處理的順序。

下面是對邏輯處理過程中各個步驟的說明,請注意虛擬表(VTn)的生成步驟:

· 步驟1(FROM):該步驟中用于驗證查詢的源表,并處理表操作符。每個表操作符應用于一系列子步驟。例如,在上面用于聯接的(1-J)步驟中會涉及如下的子步驟。最終這些子步驟完成后,將生成虛擬表VT1。

Ø (1-J1):執行left_table和right_table兩個表的交叉聯接(笛卡兒乘積),生成虛擬表VT1-J1;

Ø (1-J2):對笛卡兒乘積應用ON篩選器,生成虛擬表VT1-J2;

Ø (1-J3):如果是外部聯接,會在該步驟中將被ON篩選掉的外部行添加到VT1-J2中,生成VT1-J3。否則,將跳過該步驟。

· 步驟2(WHERE):對VT1應用WHERE篩選器,將符合篩選條件的行插入到VT2中。

· 步驟3(GROUP BY):按GROUP BY子句中的列列表對VT2中的行分組,生成VT3。如果語句中包含WITH CUBE或WITH ROLLUP,則將分組統計結果再次加總后插入VT3,生成VT3-RC。

· 步驟4(HAVING):對VT3應用HAVING篩選器,將符合篩選條件的行插入到VT4。

· 步驟5(SELECT):SQL Server 2008邏輯查詢處理SELECT子句中的元素,生成VT5。

u (5-1)計算表達式:該步驟計算SELECT列表中的表達式,生成VT5-1;

u (5-2)DISTINCT:從VT5-1中移除重復行,生成VT5-2;

u (5-3)TOP:該步驟根據ORDER BY子句中指定的排序規則,從VT5-2的開始處篩選出指定數量或比例的行。

· 步驟6(ORDER BY):該步驟對VT5-3中的行按ORDER BY子句中的列列表進行排序,生成一個游標VC6。

【編輯推薦】

  1. SQL Server Compact中的DLL文件與工具
  2. SQL Server合并復制性能的提高有哪些方案?
  3. SQL Serverlink Oracle的幾種不同方式
  4. Eclipse連接SQL Server 2000的步驟與易出現的問題
  5. 遇到SQL Server 2000Bug不可怕!
責任編輯:佚名 來源: 賽迪網
相關推薦

2010-07-15 09:14:32

SQL server組

2010-06-18 12:37:04

SQL Server查

2009-04-27 14:48:44

2010-07-16 09:49:51

SQL Server建

2009-03-17 13:25:13

查詢遷移SQL Server

2010-07-06 17:16:43

SQL Server視

2010-07-20 11:26:08

SQL Server阻

2010-06-29 17:45:22

SQL Server

2010-07-08 13:13:14

清除SQL Serve

2010-07-20 11:31:25

SQL Server避

2010-07-16 11:10:52

SQL server

2010-10-11 09:05:40

SQL Server

2010-07-02 13:26:56

SQL Server處

2010-07-13 17:02:18

SQL Server

2010-07-22 14:16:59

SQL Server

2011-03-15 10:22:42

SQL Server 聯機事務處理

2010-10-22 09:32:01

SQL Server2

2011-08-19 14:38:22

SQL Server 2008遞歸查詢

2009-04-16 18:15:19

動作審核審核活動SQL Server

2009-04-16 17:44:31

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黄久久久 | 国产亚洲精品精品国产亚洲综合 | 综合九九| 人人干人人看 | 一区二区伦理电影 | 国产精品久久久久久久久免费桃花 | 日韩中文在线观看 | 日本黄色激情视频 | 精品欧美一区二区三区免费观看 | 日本理论片好看理论片 | 国产亚洲一区二区三区 | 国产激情自拍视频 | 久久精品一二三影院 | 国产精品乱码一区二三区小蝌蚪 | 蜜月aⅴ免费一区二区三区 99re在线视频 | 国产精品久久久久久久久久久免费看 | 成年人在线视频 | 欧美久久精品一级黑人c片 91免费在线视频 | 一区二区成人在线 | 久久99国产精品 | 久久av一区二区三区 | 在线成人av| 日日干日日操 | 久久久91精品国产一区二区三区 | 久久综合伊人一区二区三 | 日韩中文一区二区三区 | 亚洲444kkkk在线观看最新 | 日韩影院在线观看 | 午夜欧美日韩 | 亚洲日日夜夜 | 亚洲 中文 欧美 日韩 在线观看 | 久久精品国产久精国产 | 99精品一区 | 亚洲国产视频一区二区 | 免费一区二区三区 | 国产精品视频免费 | 久久99精品久久久久久 | 日本欧美国产在线观看 | 在线观看免费福利 | 亚洲欧美日韩高清 | 久久人人网 |