公用表表达式

在Microsoft SQL Server 2008系统中,可以使用公用表表达式(common table expression,CTE)。CTE是定义在SELECT、INSERT、UPDATE或DELETE语句中的临时命名的结果集,CTE也可以用在视图的定义中。在CTE中可以包括对自身的引用,因此这种表达式也被称为递归CTE。

在SELECT语句中,可以使用WITH子句定义CTE。CTE的基本语法形式如下:

WITH expression_name (column_name, …)

AS

(CTE_query_definition)

我们用几个案例来说话,如图:

Sql Server中CTE(公用表达式)WITH AS语法入门 - 笔记_WITH AS

从上一张图总结:WITH后跟表名(列名,列名,列名) AS后面的括号中接表达式。最后接SELECT 所有的WITH列+FROM表名

Sql Server中CTE(公用表达式)WITH AS语法入门 - 笔记_WITH AS_02