SQL 无限级分类语句

简介: 原文:SQL 无限级分类语句原表数据为:   此处用到了with关键字,在程序中也可以用递归实现,但觉得还是没有一条sql方便 with tb (ID,Name,ParentID,Sort) as( select a.
原文: SQL 无限级分类语句

原表数据为:

 

此处用到了with关键字,在程序中也可以用递归实现,但觉得还是没有一条sql方便

with tb (ID,Name,ParentID,Sort)
as(
 select a.*,convert(varchar,convert(varchar,partid)+'->'+convert(varchar,ID))
 from test a where partid=0  --查询所有父节点
 UNION ALL
 select a.*,convert(varchar,sort+'->'+convert(varchar,a.ID))
 from test a inner join tb b on a.partid=b.ID
)
select * from tb order by sort
View Code

这是查询所有父节点的数据,如要查询某个子节点把where条件改为id=子节点ID 即可

目录
相关文章
|
SQL 关系型数据库 MySQL
MySQL数据库基础第一篇(SQL通用语法与分类)
MySQL数据库基础第一篇(SQL通用语法与分类)
|
10月前
|
SQL Java 数据库连接
如何在 Java 代码中使用 JSqlParser 解析复杂的 SQL 语句?
大家好,我是 V 哥。JSqlParser 是一个用于解析 SQL 语句的 Java 库,可将 SQL 解析为 Java 对象树,支持多种 SQL 类型(如 `SELECT`、`INSERT` 等)。它适用于 SQL 分析、修改、生成和验证等场景。通过 Maven 或 Gradle 安装后,可以方便地在 Java 代码中使用。
3327 11
|
SQL 存储 关系型数据库
RDS for MySQL的SQL分类与数据类型
小明需在MySQL中管理商品信息,使用SQL完成业务操作。SQL分为DQL(查询)、DML(增删改)、DDL(定义)、DCL(权限控制)和TCL(事务)五大类。DDL用于创建、修改和删除数据库结构,DML处理数据,DCL控制权限,TCL管理事务,DQL则用于查询数据。MySQL有多种数据类型,如数值型(整数、小数)、日期型和字符串型等,选择合适的数据类型是高效开发的关键。
227 0
|
SQL 监控 安全
SQL注入公鸡分类及原理
SQL注入公鸡分类及原理
|
SQL 存储 关系型数据库
SQL分类与数据类型
【7月更文挑战第12天】Mysql SQL语句分类与数据类型 介绍
|
SQL 存储 关系型数据库
MySQL数据库——SQL(1)-SQL通用语法、SQL分类、DDL(数据库操作、表操作)
MySQL数据库——SQL(1)-SQL通用语法、SQL分类、DDL(数据库操作、表操作)
189 1
|
SQL 关系型数据库 MySQL
|
SQL
SQL标准的四大分类
SQL标准的四大分类。
178 2
|
SQL Oracle 关系型数据库
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
mysql和oracle 命令行执行sql文件 数据库执行sql文件 执行sql语句
271 0
|
SQL 存储 关系型数据库
Mysql数据库 1.SQL语言分类 DDL.数据定义语言
Mysql数据库 1.SQL语言分类 DDL.数据定义语言
256 0