表结构:
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的所有子节点树形结构
浙公网安备 33010602011771号