下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當前位置:軟件下載吧 > 數據庫 > MS_SQL > SQL基礎:SQL?Server使用T-SQL進階之公用表表達式(CTE)

          SQL基礎:SQL?Server使用T-SQL進階之公用表表達式(CTE)

          時間:2024-02-08 11:17作者:下載吧人氣:17

          在編寫T-SQL代碼時,往往需要臨時存儲某些結果集。前面我們已經廣泛使用和介紹了兩種臨時存儲結果集的方法:臨時表和表變量。除此之外,還可以使用公用表表達式的方法。

          公用表表達式(Common Table Expression)是SQL Server2005版本的引入的一個特性。CTE可以看組是一個臨時的結果集,可以再接下來來的一個SELECT,INSERT,UPDATE,DELETE,MERGE語句中多次引用。

          一、3種方法比較

          使用公用表達式CTE可以讓語句更加清晰簡練。與公用表達式作用類似的還有臨時表和表變量。下面給出三種方法的對比。

          • 臨時表#:需要在臨時數據庫TempDB中通過I/O操作來創建表結構,一旦用戶退出SQL Server環境則自動被刪除。
          • 表變量@:在內存中以表結構的形式存在,其定義與變量一致,其使用與表類似,不需要產生I/O。
          • 公用表表達式with as:定義在內存中保存的臨時存儲結果集對象,不產生I/O,不需要按照表變量這樣定義,使用方法和表類似。可以自己引用,也可以再查詢中被多次引用。

          1、使用CTE好處

          根據微軟對CTE好處的描述,可以歸結為四點:

          • 可以定義遞歸公用表表達式(CTE)
          • 當不需要將結果集作為視圖被多個地方引用時,CTE可以使其更加簡潔
          • GROUP BY 語句可以直接作用于子查詢所得的標量列
          • 可以在一個語句中多次引用公用表表達式(CTE)

          二、WITH AS的含義

          WITH AS-做子查詢部分(subquery factoring)。

          它用于定義一個SQL片段,該片段會被是整個SQL語句所用到。如果WITH AS所以定的表名被調用兩次以上,則優化器會自動將WITH AS所獲取的數據放入臨時表里,如果只是被調用一次,則不會。

          可以通過materialize將WITH AS短語里的數據強制放入全局臨時表里。

          WITH AS可以被緊跟著的一條SQL語句所使用多次,但不能被緊跟著的多條SQL語句使用。

          WITH B AS
          (
          SELECT * FROM xxx WHERE Id > 5
          )
          SELECT * FROM B
          標簽MSSQL,SQLServer,技術文檔,數據庫,SQLSERVER

          相關下載

          查看所有評論+

          網友評論

          網友
          您的評論需要經過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 波多野结衣高清一区二区三区 | 欧美日韩精品一区二区在线观看| 国产成人久久精品一区二区三区| 成人精品视频一区二区三区尤物| 国产一区二区不卡老阿姨| 熟妇人妻系列av无码一区二区| 狠狠综合久久av一区二区| 亚洲一区二区三区高清不卡| 亚洲色大成网站www永久一区| 精品乱码一区内射人妻无码| 无码精品视频一区二区三区 | 日本一区二区在线| 国内精品视频一区二区三区| 中文字幕在线不卡一区二区| 老熟女高潮一区二区三区| 久久亚洲AV午夜福利精品一区| 日本精品高清一区二区| 上原亚衣一区二区在线观看| 中文字幕人妻无码一区二区三区| 精品中文字幕一区二区三区四区| 精品国产亚洲第一区二区三区| 99国产精品欧美一区二区三区| 亚洲sm另类一区二区三区| 亚洲日韩AV一区二区三区中文| 日本无卡码免费一区二区三区| 久久久久成人精品一区二区| 精品视频一区二区三三区四区| 2021国产精品一区二区在线| 无码国产精品一区二区免费式直播 | 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 一区二区三区四区精品| 一区二区三区在线播放| 日韩精品人妻一区二区中文八零| 亚洲日韩国产精品第一页一区| 国产精品高清一区二区三区 | 亚洲欧洲日韩国产一区二区三区| 毛片无码一区二区三区a片视频| 国产一区二区在线观看视频| 一区二区无码免费视频网站| 欧洲亚洲综合一区二区三区| 国产麻豆剧果冻传媒一区 |