首页 > 其他 > 详细

WITH common_table_expression

时间:2015-09-24 16:22:01      阅读:231      评论:0      收藏:0      [点我收藏+]
Feature:
  • 公用表表达式只能包含一个SELECT,多SELECT需UNION,UNION ALL
  • 公用表表达式只能引用一次
  • 公用表表达式可以包括对自身的引用,这种表达式称为递归公用表表达式
--临时表变量
WITH t_Class
AS
(
    SELECT *
    FROM Intranet..TemplateDocClass
    WHERE State = 1
)
SELECT COUNT(1)
FROM t_Class

--引用自身,递归多级别
WITH t_Class
AS
(
    SELECT ID,ClassName,1 AS [Deep]
    FROM Intranet..TemplateDocClass
    WHERE ParentID = -1

    UNION ALL

    SELECT C1.ID,C1.ClassName,C2.Deep + 1
    FROM Intranet..TemplateDocClass AS C1
    INNER JOIN t_Class AS C2 ON C2.ID = C1.ParentID
)
SELECT *
FROM t_Class

 

 

WITH common_table_expression

原文:http://www.cnblogs.com/zenple/p/4830043.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!