当前位置:首页 > 日记 > 正文

MySQL的递归查询的树表的子节点和父节点的具体实施

MySQL的递归查询的树表的子节点和父节点的具体实施
简介:本mysql5.0.94版、版和高级版(5.5,6,等)都不支持循环递归查询。与SQLServer和Oracle相比,MySQL是难以遍历子节点的树表。该计划的重点是以下的数据,写两SQL存储过程、查询计算子节点的父节点复制,查询是逆向思维。

表结构和表数据不公开。查询的表user_role是ID,和主键ParentID。每个记录都有父字段(对于应该记录的父节点,当然,父节点自然有多个子节点)。
复制代码代码如下所示:
创建功能` getchildlist `(rootid int)
返回varchar(1000)
开始
声明schildlist varchar(1000);
声明schildtemp varchar(1000);
集schildtemp =铸造(rootid焦炭);
而schildtemp不是空做
如果(schildlist不为空的话)
集schildlist = concat(schildlist,',',schildtemp);
其他的
集schildlist = concat(schildtemp);
最后如果;
选择group_concat(ID)从user_role哪里find_in_set为schildtemp(ParentID,schildtemp)> 0;
结束的时候;
返回schildlist;
结束;
获取子节点
电话:1,选择 / * getchildlist(0)身份证;2、选择5from user_role哪里find_in_set(ID,getchildlist(2));* /
创建功能` getparentlist `(rootid int)
返回varchar(1000)
开始
声明sparentlist varchar(1000);
声明sparenttemp varchar(1000);
集sparenttemp =铸造(rootid焦炭);
而sparenttemp不是空做
如果(sparentlist不为空的话)
SET sParentList = concat (sParentTemp, ',', sParentList);
其他的
SET sParentList = concat (sParentTemp);
最后如果;
选择group_concat(ParentID)从user_role哪里find_in_set为sparenttemp(ID,sparenttemp)> 0;
结束的时候;
返回sparentlist;
结束;
获取父节点
电话:1,选择 / * getparentlist(6)身份证;2、选择*从user_role哪里find_in_set(ID,getparentlist(2));* /

不完成,PM存储结构表示,检查几次在java…存储结构具有许多优点,包括加快查询速度,提高安全性,但会增加数据库的负担。许多文章都指出,如果两者结合起来,个人就不会那么有用了。

相关文章

宽带互联网帐户和密码软件的使用和

宽带互联网帐户和密码软件的使用和

帐户,密码,使用方法,宽带互联网,技术,经常修电脑的朋友知道,有时因为客户的宽带账号不能记住账号或密码,耽误时间。如果你不帮忙设置,不懂电脑的客户就不会设置它,如果你帮助客户,那真的耽误了时间。 在这个时候,我们通常会去网上搜索一些自动接…

excel2013暗示微软Excel兼容性检查

excel2013暗示微软Excel兼容性检查

检查,解决方案,兼容性,暗示,电脑软件,问题: 计算机上安装的是最新版本的微软Office2013。当使用Excel 2013打开旧格式的Excel文件,它经常弹出微软Excel兼容性检查器的提示框,我们如何不让Excel弹出这个箱子吗 答案uff1a 如果您不希望Excel弹…

如何创建在Win8桌面快捷方式(3种方

如何创建在Win8桌面快捷方式(3种方

桌面快捷方式,种方法,电脑软件,点评:如何创建在Win8桌面快捷方式这是许多初学者不会做的问题。以联想的远程软件服务应用程序为例,告诉你如何在桌面上创建快捷方式。 很多网友问Win8如何在桌面创建快捷方式,这次要介绍的3个简单的方法。下一个…

为了避免win7的更新方式必须重新完

为了避免win7的更新方式必须重新完

为了避免,方式,电脑软件,点评:系统更新是Windows中一个非常重要的功能,尤其是当它顽固地让计算机必须重启完成更新时,可以推迟4小时执行前,但不能禁用它的选项,这里是一个很好的解决方案,感兴趣的朋友千万不要错过。 系统更新是windows系统中非常…

如何延长电池使用Win7保持电池长

如何延长电池使用Win7保持电池长

电池使用,电脑软件,点评:同样的电池容量,说明你的电脑能使电池的寿命更长也是很重要的。我们怎么能不浪费电池电量,让电池坚持更长时间,有一些好的建议,我们可以参考下一个。 电池的寿命是非常重要的,但同样的电池容量,你的电脑可以使电池更长的时…

当GDisk是分区的,只有一个光标在屏

当GDisk是分区的,只有一个光标在屏

闪烁,光标,只有一个,溶液,屏幕上,问题: 我用分区软件对系统磁盘分区和使用Gdisk一键分区。结果是5小时后,分区没有完成,显示器屏幕是黑屏,左上角有一个光标。开始,想一下分区软件问题,重启电脑,再试几次,或者不试。我想知道这是否是硬盘问题还是其…

如何将excel转换成txt,txt到excel

如何将excel转换成txt,txt到excel

转换成,如何将,电脑软件,excel,txt,在许多情况下,我们不仅保存Excel XLS格式,而且使用多种格式,如转化成TXT记事本或Excel格式,导入TXT格式导入Excel。遇到这种转换的问题真的是很讨厌的,因为太多的表格与Excel格式txt会消失,只留下文字和符号所…

oracle中使用解码函数的方法

oracle中使用解码函数的方法

解码,方法,函数,电脑软件,oracle,意义阐释: 解码(条件,值1,返回值1,值2,返回值2,…值n,返回值n,默认值) 这个函数的含义如下: 复制代码代码如下所示: 如果条件=值1,那么 返回(翻译值1) elsif条件=价值2 返回(翻译值2) … elsif条件= n值,然后 返回(翻译值n) 其…

对scardsvr32.exe-使用scardsvr32

对scardsvr32.exe-使用scardsvr32

电脑软件,exe,点评:scardsvr32.exe是墨菲。B病毒相关程序。该木马允许攻击者访问你的计算机,窃取密码和个人数据 进程文件:scardsvr32或scardsvr32.exe 进程名称:莫非B病毒。 过程类别:安全风险的过程 英文描述: scardsvr32.exe进程是注册为墨…

PHP调用方法mssql_fetch_row,mssql_

PHP调用方法mssql_fetch_row,mssql_

调用方法,电脑软件,PHP,mssql_fetch_row,mssql_fetch_a,方法名称:mssql_fetch_row() 测试: 复制代码代码如下所示: require'dbconn PHP的; 美元'select * _test语句; 查询= mssql_query美元($ SQL); 而($行= mssql_fetch_row($查询)) { 'userid'} { …

性格签名:别对我偷懒。

性格签名:别对我偷懒。

对我,性格,电脑软件,不要对我懒惰,因为我比你懒。 真正的道德到底是什么感觉友谊爱吗爱吗除了那些还有什么 生活中,我不由天,幸福,由心不由境hellip; 过去没有什么要说的。 我是一个美丽的泡沫,说的人,听的人把它刻成伤# 是懦弱吗但更明显的无惧he…

如何在BIOS屏幕上屏幕截图(技术)

如何在BIOS屏幕上屏幕截图(技术)

屏幕截图,如何在,屏幕上,技术,电脑软件,问题: 你想分享一些BIOS设置在互联网上,但你没有一个屏幕截图的BIOS屏幕(屏幕截图)。没有相机周围,我不知道是否有其他方法来实现BIOS屏幕截图。 答案uff1a 是的,你可以在没有摄像机的情况下进行BIOS的筛…