初识CTE

CTE就是 Common Table Expression(通用表表达式)是一个可以由定义语句引用的临时命名结果集。只须定义CTE一次,即可在查询中多次引用它。

定义

WITH Test

AS

(

 SELECT * FROM dbo.CUSTOMERS

)

SELECT * FROM test

如果定义多个CTE只要在上一个CTE后面增加一个“,”,如下:

with test1

as

(

select * …………

),

test2 as

(

select * …………

)

有如下限制

1CTE with前的语句必须使用“;”,否则报错

2CTE with之后第一句必须使用CTEselect。即CTE的生命周期只是在第一次使用之后就消亡。每个

3sp中只能使用一次with语句。

通用表表达式(CTE)SQL Server的一项新功能。本质上CTE是一个临时结果集,它仅仅存在于它发生的语句中。可以在SELECTINSERTDELETECREATE VIEW语句中建立一个CTE

posted @ 2011-09-08 14:52  leonp  阅读(361)  评论(0编辑  收藏  举报