SqlServer笔记-公用表表达式(CTE)

公用表表达式和派生表类似的另一种形式的表表达式,CTE中是先定义表,然后再引用,结构比较清晰

CTE相比派生表的优势:如果有多个子查询,不需要像派生表那样嵌套,只需要在WITH中定义多个CTE,每个CTE可以引用它前面定义的所有CTE

派生表:from子句中的子查询。

select * 
from
(select 1,2,3) tb(c1,c2,c3)  --c1、c2、c3是列别名

CTE:

with 
tb(c1,c2,c3)
as (select 1,2,3) select * from tb

多个CTE:

with 
tb1(c1,c2,c3) as (select 1,2,3),
tb2(c1,c2,c3) as (select * from tb1) 
select * 
from tb2

猜你喜欢

转载自www.cnblogs.com/fanfan-90/p/12123362.html
今日推荐