博客
关于我
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 表的操作
查看>>
mysql 视图,视图更新删除
查看>>
MySQL 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>
mysql 转义字符用法_MySql 转义字符的使用说明
查看>>
mysql 输入密码秒退
查看>>
mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
查看>>
mysql 通过查看mysql 配置参数、状态来优化你的mysql
查看>>
mysql 里对root及普通用户赋权及更改密码的一些命令
查看>>
Mysql 重置自增列的开始序号
查看>>
mysql 锁机制 mvcc_Mysql性能优化-事务、锁和MVCC
查看>>
MySQL 错误
查看>>
mysql 随机数 rand使用
查看>>
MySQL 面试题汇总
查看>>