Sql學(xué)習(xí)第二天——SQL DML與CTE概述_Mssql數(shù)據(jù)庫教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:Sql學(xué)習(xí)第三天——SQL 關(guān)于CTE(公用表達(dá)式)的遞歸查詢使用公用表表達(dá)式(CTE)具有一個重要的優(yōu)點(diǎn),那就是能夠引用其自身,從而創(chuàng)建遞歸 CTE接下來詳細(xì)介紹下:CTE 的基本語法結(jié)構(gòu),在使用CTE時注意事項(xiàng)以及實(shí)例操作
DML (Data Manipulation Language) 與 CTE (Common Table Expression)今天看書時遇到的兩個縮寫,不知道其含義,于是就百度了一下,特地在此記錄下來,以便于下次復(fù)習(xí)使用。
關(guān)于DML (Data Manipulation Language):
數(shù)據(jù)操縱語言,用戶能夠查詢數(shù)據(jù)庫以及操作已有數(shù)據(jù)庫中的數(shù)據(jù)的計算機(jī)語言。具體是指是UPDATE更新、INSERT插入、DELETE刪除。
關(guān)于CTE (Common Table Expression):
CTE(Common Table Expression) ,即公用表表達(dá)式,可以認(rèn)為是在單個 SELECT、INSERT、UPDATE、DELETE 或 CREATE ⅥEW 語句的執(zhí)行范圍內(nèi)定義的臨時結(jié)果集。CTE與派生表類似,具體表現(xiàn)在不存儲為對象,并且只在查詢期間有效。與派生表的不同之處在于,CTE 可自引用,還可在同一查詢中引用多次。
CTE可用于:
1.創(chuàng)建遞歸查詢(我個人認(rèn)為CTE最好用的地方)。
2.在同一語句中多次引用生成的表。
CTE優(yōu)點(diǎn):
1.使用 CTE 可以獲得提高可讀性和輕松維護(hù)復(fù)雜查詢的優(yōu)點(diǎn)。
2.查詢可以分為單獨(dú)塊、簡單塊、邏輯生成塊。之后,這些簡單塊可用于生成更復(fù)雜的臨時 CTE,直到生成最終結(jié)果集。
CTE可使用的范圍:
可以在用戶定義的例程(如函數(shù)、存儲過程、觸發(fā)器或視圖)中定義 CTE。
下面看一個簡單的CTE例題:
把test表中salary最大的id記錄保存在test_CTE中,再調(diào)用
代碼如下:
復(fù)制代碼 代碼如下:hl5o.cn
with test_CTE(id,salary)
as
(
select id,max(salary)
from test
group by id
)
select * from test_cte
分享:sqlserver中delete、update中使用表別名和oracle的區(qū)別之所以要用別名,是因?yàn)閣here條件中需要用到子查詢寫一些條件,下面不寫那么復(fù)雜,僅說明一下問題
相關(guān)Mssql數(shù)據(jù)庫教程:
- sql 語句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數(shù)據(jù)庫,提示 無法為該請求檢索數(shù)據(jù) 錯誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲過程參數(shù)的用法實(shí)例詳解
- 相關(guān)鏈接:
- 教程說明:
Mssql數(shù)據(jù)庫教程-Sql學(xué)習(xí)第二天——SQL DML與CTE概述
。