表结构:

Permission.Department表(用户部门表)

字段名称 数据类型 可空 默认值 说明
ID int <自增标识(1,1)>
数据标识
ParentID int ((0)) 父部门标识
Name varchar(50) <主键>
部门名称
Description varchar(5000) 部门描述
AllowReg int ((0)) 是否允许用户注册
ExpireTime datetime 临时权限过期时间
CreateTime datetime (getdate()) 数据建立时间
CreateUserID int 数据建立者标识

 SQL语句:

    WITH Node([ID])
    AS
    (
        SELECT [ID]
          FROM [Permission].[Department]
         WHERE [ID] = 2
         UNION ALL
        SELECT a.[ID]
          FROM [Permission].[Department] a
          JOIN Node ON a.[ParentID] = Node.[ID]
    )
    select *
      FROM [Permission].[Department]
     WHERE [ID] IN (SELECT [ID] FROM Node)

 结果:查询出ID为2的所有子节点树形结构

posted on 2009-06-08 17:39  李宏  阅读(210)  评论(1编辑  收藏  举报