位置: 编程技术 - 正文
推荐整理分享MySQL实现类似于connect_by_isleaf的功能MySQL方法或存储过程(mysql和c),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:mysql类似rownum,mysql类似merge,mysql类似于oracle的rownum,mysql类似软件,mysql与c++相连,mysql和c,mysql类似rownum,mysql类似软件,内容如对您有帮助,希望把文章链接给更多的朋友!
最近有个特别变态的业务需求,有一张表
大概就是这样,有多万行记录,每个pid记录的这个ID的最顶级分类,tid是它的上级分类!现在需求是:通过指定一个ID,查找出它的所有子集成员,并修改这个pid的值为新指定的值!!在PHP中跑了一下,执行时间大概需要秒+,很是痛苦!!!需要递归找出所有子集,修改它的pid,工作量还是蛮大的。
而oracle中有一个方法是connect_by_isleaf,可以很方便的找出所有子集,但我是MySQL......
所以用这儿简单的写写用MySQL的方法或存储过程实现的经验
第一种:MySQL的方法
使用方法就是
但我在测试的时候,万的数据基本上就是崩溃!!!
优点: 简单,方便,没有递归调用层次深度的限制 (max_sp_recursion_depth,最大) ;缺点:长度受限。
第二种:存储过程+中间表
哈哈,万数据也卡成球了~~~
再想办法吧~~~~不折腾了
MySQL的查询计划中ken_len的值计算方法 key_len的含义在MySQL中,可以通过explain查看SQL语句所走的路径,如下所示:mysqlcreatetablet(aintprimarykey,bintnotnull,cintnotnull,index(b));QueryOK,0rowsaffected(0.sec)mysqlexpla
linux下mysql 5.7. 免安装版本图文教程 本文为大家分享了mysql5.7.免安装版本教程,供大家参考,具体内容如下MySQL:5.7.程序目录:/usr/local/MySQL数据文件目录:/data/mysql下载地址
MySQL 5.7.压缩版安装笔记 本文实例为大家分享了mysql5.7.压缩版安装步骤,供大家参考,具体内容如下1.下载压缩包并解压缩到相应目录2.添加MySQL的bin目录路径到Path环境变量3.修
标签: mysql和c
本文链接地址:https://www.jiuchutong.com/biancheng/350092.html 转载请保留说明!上一篇:navicat中创建存储过程、触发器和使用游标的简单实例(图文)(navicate创建存储过程)
下一篇:MySQL的查询计划中ken_len的值计算方法(查看mysql执行计划关键字)
友情链接: 武汉网站建设