博客
关于我
SQL Server递归查询在Highgo DB中实现 (APP)
阅读量:391 次
发布时间:2019-03-05

本文共 1058 字,大约阅读时间需要 3 分钟。

作者:瀚高PG实验室 (Highgo PG Lab)

目录

环境

文档用途

详细信息

环境

系统平台:Microsoft Windows (64-bit) 10

版本:5.6.4

文档用途

在Highgo DB中实现和SQL Server一样效果的递归查询

详细信息

1、SQL Server表创建以及测试数据添加

 

Create table GroupInfo([Id] int,[GroupName] nvarchar(50),[ParentGroupId] int)

 

 

Insert GroupInfo

select 0,'某某大学',null union all

select 1,'外语学院',0 union all

select 2,'英语专业',1 union all

select 3,'日语专业',1 union all

select 4,'英语专业一班',2 union all

select 5,'英语专业二班',2 union all

select 6,'日语专业一班',3 union all

select 7,'日语专业二班',3 union all

select 8, '法学院',0 union all

select 9, '刑法学专业',8 union all

select 10,'经济法学专业',8 union all

select 11,'刑法学专业一班',9 union all

select 12,'刑法学专业二班',9 union all

select 13,'经济法学专业一班',10 union all

select 14,'经济法学专业二班',10

 

2、SQL Server递归查询语句

 

--构造递归路径

with

CTE

as

(

    select Id,GroupName,ParentGroupId,GroupPath=CAST( GroupName as nvarchar(max)) from GroupInfo where Id=0

    union all

    select G.*,CAST(CTE.GroupPath+'//'+G.GroupName as nvarchar(max)) as GroupPath from CTE

    inner join GroupInfo as G on CTE.Id=G.ParentGroupId

)

select * from CTE order by ParentGroupId

更多详细信息请登录【瀚高技术支持平台】查看 

转载地址:http://hyowz.baihongyu.com/

你可能感兴趣的文章
MYSQL遇到Deadlock found when trying to get lock,解决方案
查看>>
MYSQL遇到Deadlock found when trying to get lock,解决方案
查看>>
mysql部署错误
查看>>
MySQL配置信息解读(my.cnf)
查看>>
Mysql配置文件my.ini详解
查看>>
MySQL配置文件深度解析:10个关键参数及优化技巧---强烈要求的福利来咯。
查看>>
Mysql配置表名忽略大小写(SpringBoot连接表时提示不存在,实际是存在的)
查看>>
mysql配置读写分离并在若依框架使用读写分离
查看>>
MySQL里为什么会建议不要使用SELECT *?
查看>>
MySQL里的那些日志们
查看>>
MySQL锁
查看>>
MySQL锁与脏读、不可重复读、幻读详解
查看>>
MySQL锁机制
查看>>
mysql锁机制,主从复制
查看>>
Mysql锁机制,行锁表锁
查看>>
MySQL锁表问题排查
查看>>
Mysql锁(2):表级锁
查看>>
MySQL锁,锁的到底是什么?
查看>>
MySQL错误-this is incompatible with sql_mode=only_full_group_by完美解决方案
查看>>
Mysql错误2003 -Can't connect toMySQL server on 'localhost'(10061)解决办法
查看>>