公用表表达式
在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)
我们用几个案例来说话,如图:
从上一张图总结:WITH后跟表名(列名,列名,列名) AS后面的括号中接表达式。最后接SELECT 所有的WITH列+FROM表名