`
java-admin
  • 浏览: 1381937 次
  • 性别: Icon_minigender_1
  • 来自: 陕西.西安
社区版块
存档分类
最新评论

mysql 实现树状查询

阅读更多

 

DELIMITER $$

DROP PROCEDURE IF EXISTS `sx_finance`.`pro_channel_class`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `pro_channel_class`(in parentid int)
begin
    declare level smallint default 0;
    declare cnt int default 0;
    create temporary table tt(class_id int,class_name varchar(20),PARENT_ID int,level smallint,sort varchar(1000));
    create temporary table tt2(class_id int,class_name varchar(20),PARENT_ID int,level smallint,sort varchar(1000));
    insert into tt select class_id,class_name,PARENT_ID,level,cast(class_id as char) from CHANNEL_CLASS where PARENT_ID=parentid;
    select row_count() into cnt;
    insert into tt2 select * from tt;
    while cnt>0 do
        set level=level+1;
        truncate table tt;
        insert into tt select a.class_id,a.class_name, a.PARENT_ID,level,concat(b.sort,a.class_id) from CHANNEL_CLASS a,tt2 b where a.PARENT_ID=b.class_id and b.level=level-1;
        select row_count() into cnt;
        insert into tt2 select * from tt;
    end while;
 select class_id, concat(space(a.level*2),'|---',a.class_name) class_name from tt2 a order by sort;
    drop table tt;
    drop table tt2;
end$$

DELIMITER ;

 

显示如下:

 

class_id class_name
4 |---首页
11 |---的沙发的
12 |---发达
18 |---f
5 |---首页2
分享到:
评论

相关推荐

    mysql 树形结构查询

    MySQL 树形结构查询是指使用存储过程来实现 MySQL 数据库中的树形结构查询。这种查询方式可以高效地查询树形结构的数据,并且可以根据需要设置递归深度。 MySQL 中的树形结构查询可以使用存储过程来实现,存储过程...

    MySql 中查询树形结构的全部子项列表 Function

    本文将深入探讨如何在MySQL中查询树形结构的全部子项列表,结合提供的`MySql_Link_Function.sql`文件,我们将探讨一种有效的方法来实现这一功能。 首先,树形结构在数据库中的存储通常采用自引用的方式,即每个节点...

    Ajax+jsp+MySQL实现动态树形菜单

    【Ajax+jsp+MySQL实现动态树形菜单】 在Web开发中,动态树形菜单是一种常见的交互元素,它能够以层次结构展示数据,提供用户友好的导航体验。本项目结合了Ajax、jsp和MySQL三种技术来实现这一功能,下面将详细阐述...

    MySQL实现树状所有子节点查询的方法

    在MySQL中,实现树状所有子节点的查询并非像Oracle那样可以直接使用Hierarchical Queries和`CONNECT BY`语句。然而,尽管MySQL不直接支持这样的功能,我们仍然可以通过其他方法来达到相同的效果。以下将详细介绍几种...

    MySQL实现递归查询的三种方式.rar

    在数据库管理中,递归查询是一种处理层次结构数据的有效方法,尤其在关系型数据库如MySQL中,递归查询可以帮助我们解决树形结构或有层级关系的数据检索问题。本资料主要探讨了MySQL中实现递归查询的三种常见方法:自...

    MySQL实现树状所有子节点查询的方法function

    MySQL实现树状所有子节点查询的方法function

    JSP+Mysql实现的简单树形结构

    这个项目“JSP+Mysql实现的简单树形结构”就是一个典型的例子,它结合了Java服务器页面(JSP)和MySQL数据库来创建一个直观的数据展示方式。以下是关于这个项目的详细知识点: 1. **JSP(Java Server Pages)**:...

    mysql数据表导出生成xml文件和树形结构

    然后,利用这个树结构,我们可以开发一个用户界面,展示数据表的树形视图。用户可以通过点击节点来加载或隐藏子节点,从而实现交互式浏览。 总之,MySQL数据表导出到XML文件是一个涉及数据库连接、数据查询、XML...

    spring+struts2+hibernate+json+dtree+mysql实现的无限级联树(全)

    本项目"spring+struts2+hibernate+json+dtree+mysql实现的无限级联树(全)"是一个典型的企业级应用示例,它综合了前端与后端的多种技术,实现了数据的动态展示和交互。下面将详细解析该项目中的主要技术及其应用。 1...

    Ztree+treeTable实现 Java实现 树形菜单 树形表格

    在Java开发中,构建用户界面时,树形菜单和树形表格是常见且重要的组件,它们可以帮助用户以层次结构的方式浏览和操作数据。本篇将详细介绍如何利用Ztree和treeTable来实现这样的功能。 Ztree是一款基于JavaScript...

    mysql 无限级分类实现思路

    MySQL 实现无限级分类是一种常见的数据库设计挑战,特别是在需要构建层级结构的数据模型时,例如网站导航菜单、组织架构或商品分类。以下将详细介绍三种常见的无限级分类实现方法,并分析其优缺点。 ### 1. 递归...

    MySQL递归查询

    MySQL 递归查询是指在 MySQL 中实现类似 Oracle Hierarchical Queries 的功能,用于查询树形结构中的所有子节点。由于 MySQL 目前还没有内置的递归查询功能,因此需要使用其他方法来实现。 第一种方法:使用函数来...

    BS实现树形结构(jsp+mysql数据库+设计文档)

    本项目“BS实现树形结构(jsp+mysql数据库+设计文档)”提供了一个完整的解决方案,包括源码、开发文档以及SQL Server数据库,方便开发者在MyEclipse环境中直接导入使用。 首先,我们来探讨树形结构在Web开发中的应用...

    mysql递归查询.doc

    MySQL 递归查询是指在 MySQL 数据库中使用递归函数来实现树形结构数据的查询,例如部门表中某个部门的所有下属部分或者某个部分的所有上级部门。 在 MySQL 中实现递归查询需要使用自定义函数(Stored Function),...

    在java中 遍历mysql中的树形结构

    本文将深入探讨如何利用Java语言和MySQL数据库来实现这一功能,解析给定代码片段,并提供一种高效遍历树形结构的方法。 ### 一、理解树形结构 树形结构是一种非线性的数据结构,它由节点和边组成,其中每个节点...

    Mysql树形递归查询的实现方法

    在MySQL中实现树形递归查询,由于MySQL本身并不直接支持类似于Oracle的`START WITH ... CONNECT BY`语法,因此需要采用其他策略。通常,我们可以利用自定义函数或递归查询的方式来处理树形结构数据。以下将详细介绍...

    ztree树形结构+mysql完整

    本项目"ztree树形结构+mysql完整"结合了ZTree的功能与MySQL数据库的使用,提供了一个完整的解决方案,包括数据存储、查询以及前端交互。 首先,ZTree的核心特性在于其丰富的API和可定制性。它支持动态加载、节点...

    jsp+mysql+java 写的树形

    【标签】"树形" 进一步强调了项目的重点在于实现树状的数据展示。在Web开发中,树形结构通常由JavaScript库(如jQuery UI、d3.js或Angular Material)在客户端渲染,但这个项目似乎是在服务器端使用Java处理,然后在...

Global site tag (gtag.js) - Google Analytics