位置: 编程技术 - 正文
推荐整理分享在Mysql数据库里通过存储过程实现树形的遍历(mysql数据库里面有一个表查的特别慢),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:mysql数据库里面的数据存在哪里,mysql数据库里的my.ini文件怎么编辑?,mysql数据库里创建表,mysql数据库里面使用主机命令是什么,mysql数据库里面有一个表查的特别慢,mysql数据库里的my.ini文件怎么编辑?,在Mysql数据库里创建视图并包含关键词,mysql数据库里创建表,内容如对您有帮助,希望把文章链接给更多的朋友!
关于多级别菜单栏或者权限系统中部门上下级的树形遍历,oracle中有connect by来实现,mysql没有这样的便捷途径,所以MySQL遍历数据表是我们经常会遇到的头痛问题,下面通过存储过程来实现。
1,建立测试表和数据:
2,利用临时表和递归过程实现树的遍历(mysql的UDF不能递归调用):
2.1,从某节点向下遍历子节点,递归生成临时表数据
2.2,从某节点向上追溯根节点,递归生成临时表数据
2.3,实现类似Oracle SYS_CONNECT_BY_PATH的功能,递归过程输出某节点id路径
2.4,递归过程输出某节点name路径
2.5,调用函数输出id路径
2.6,调用函数输出name路径
2.7,调用过程输出子节点
2.8,调用过程输出父节点
3,开始测试:
3.1,从根节点开始显示,显示子节点集合:
3.2,显示首页下面的子节点
3.3,显示TV下面的所有子节点
3.4,“帮忙”节点有一个子节点,显示出来:
3.5,“栏目简介”没有子节点,所以只显示最终节点:
3.6,显示根节点的父节点
3.7,显示“首页”的父节点
3.8,显示“TV”的父节点,parent_id为-1
3.9,显示“帮忙”节点的父节点
3.,显示最低层节点“栏目简介”的父节点
以上所述是小编给大家介绍的在Mysql数据库里通过存储过程实现树形的遍历,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!
CentOS下安装mysql时忘记设置root密码致无法登录的解决方法 前言昨天一天都是启动mysql时提示:TheserverquitwithoutupdatingPIDfile,今天重装了mysql之后还是同样报错,然后恢复了一下/usr/my.cnf突然就可以启动了。(明明
MySQL查看和修改字符编码的实现方法 MySQL的默认编码是Latin1,不支持中文,要支持中午需要把数据库的默认编码修改为gbk或者utf8。1、需要以root用户身份登陆才可以查看数据库编码方式(以ro
mysql命令行中执行sql的几种方式总结 1.直接输入sql执行MySQLselectnow();+---------------------+|now()|+---------------------+|--::|+---------------------+1rowinset(0.sec)2.执行编写好的sql脚本mysqlsourceH:/1.s
上一篇:jQuery 绑定事件的方式总结(jquery常用的事件绑定函数有哪些)
下一篇:CentOS下安装mysql时忘记设置root密码致无法登录的解决方法(centos下安装虚拟机)
友情链接: 武汉网站建设