SET sTemp=‘$‘;

SET sTempChd = CAST(Id AS CHAR); -- 转化数据格式

WHILE sTempChd IS NOT NULL DO  -- 开始循环

SET sTemp= CONCAT(sTemp,‘,‘,sTempChd); -- 字符串拼接

SELECT GROUP_CONCAT(id) INTO sTempChd FROM `user` WHERE FIND_IN_SET(pid,sTempChd)>0;

-- group_concat()会计算哪些行属于同一组,并且将同一组的 参数 拼接成字符串 以逗号形式隔开;

-- FIND_IN_SET(pid,sTempChd) 判断 pid 是否在 sTempChd 中

-- 该语句的意思是 查询 user 表,所查询的数据的 pid 在 sTempChd 中,并且将查到的 id 形成一个由 逗号 隔开的字符串,重新赋值给 sTempChd ;当 sTempChd 有值,再次循环,没有值,跳出循环,

-- 循环中将查到的数据拼成了 sTemp 字符串

END WHILE;

-- 对 sTemp  处理

SELECT LENGTH(sTemp)-LENGTH(replace(sTemp,‘,‘,‘‘)) INTO InvitorN;

SET InvitorN = InvitorN + 1;

WHILE J <= InvitorN DO

SELECT SUBSTRING_INDEX(sTemp, ‘,‘, J) INTO TempStr;

SELECT SUBSTRING(TempStr,M+1) INTO TempUserId;

SET M = LENGTH(TempStr) + 1;

SET J = J +1 ;

IF TempUserId != UserId THEN

XXXX

END IF;

END WHILE;

mysql 递归查询效率_mysql 递归查询相关推荐

  1. mysql 分页效率_MYSql分页查询效率提高

    CREATE TABLE `goods` ( `UrlId` char(100) CHARACTER SET utf8 NOT NULL, `Title` varchar(100) CHARACTER ...

  2. mysql 随机函数 效率_MySQL 随机函数获取数据速度和效率分析

    在mysql中带了随机取数据的函数,在mysql中我们会有rand()函数,很多朋友都会直接使用,如果几百条数据肯定没事,如果几万或百万时你会发现,直接使用是错误的.下面我来介绍随机取数据一些优化方法 ...

  3. Mysql join效率_mysql 子查询与join性能对比

    有如下的数据表: application_daily 11万条数据 application_info400多条数据 查询结果数据为19498 来看下mysql 子查询的例子. 例1,子查询 (0.01 ...

  4. mysql select效率_Mysql优化之selectcount效率_MySQL

    bitsCN.com 1.任何情况下SELECT COUNT(*) FROM tablename是最优选择: 2.尽量减少SELECT COUNT(*) FROM tablename WHERE CO ...

  5. mysql exists 效率_Mysql之exists和inner join效率问题(1)

    使用两张大小差距比较大的表来进行测试 前言:在使用laravel的过程中发现whereHas实现的方式是exists子查询,又听说exists尽量少使用,容易导致慢查询,于是就有了接下来两篇文章. 两 ...

  6. mysql实现树形_Mysql实现树形递归查询

    最近在做项目迁移,Oracle版本的迁到Mysql版本,遇到有些oracle的函数,mysql并没有,所以就只好想自定义函数或者找到替换函数的方法进行改造. Oracle递归查询 oracle实现递归 ...

  7. MySQL递归查询,Oracle递归查询,MyBatis+MySQL实现递归查询

    递归查询用于查询树形结构的列表,比如行政区列表.包括向下递归查询:根据父级查询子级:向上查询:根据子级查询父级.mysql需要使用存储函数,oracle可以使用connect by语句直接查询. My ...

  8. mysql根据父节点递归查询所有子节点

    mysql根据父节点递归查询所有子节点 在开发中,我们经常遇到通过父级节点查询所有子节点的需求,我们知道在mysql中我们可以自定义函数的方式来实现这个功能,但是自定义函数根据父节点递归查询所有子节点 ...

  9. mysql函数大全最小,MySQL函数一览_MySQL函数全部汇总

    前言 MySQL提供了众多功能强大.方便易用的函数,使用这些函数,可以极大地提高用户对于数据库的管理效率,从而更加灵活地满足不同用户的需求.本文将MySQL的函数分类并汇总,以便以后用到的时候可以随时 ...

最新文章

  1. mysql asyn 示例
  2. 无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]
  3. java对mysql数据库进行单表筛选备份、还原操作
  4. mysql第四项_mysql数据库的基本介绍与操作(第四篇-mysql索引篇)
  5. Druid-目前最好的连接池
  6. HTML5——section,article,aside
  7. Flutter之Redux框架原理解析
  8. SpringAOP中的JointPoint和ProceedingJoinPoint使用详解(附带详细示例)
  9. 华为HCIP-DATACOM391-420(821)
  10. 【烈日炎炎战后端】JAVA基础(3.4万字)
  11. shoug oracle,SHOUG User Group Young Expert Program
  12. SQL Server基础操作(此随笔仅作为本人学习进度记录三)
  13. C语音 ^ 异或 也称XOR详解
  14. 数据库是如何通过索引定位数据,索引的原理讲解
  15. Qt编写带频谱的音乐播放器
  16. html在右上角显示字符,html特殊字符表
  17. 数字孪生服务提供模式及典型案例
  18. 安装Redis和安装Redis Desktop Manager
  19. Android手机按键【监听】
  20. 嘉立创EDA专业版--PCB器件重叠如何选中

热门文章

  1. CSDN学霸课表——微信公众号开发全部流程
  2. C语言经典题目(二)
  3. Android获取整个屏幕的Touch事件
  4. 紧抓“营改增”契机 国税总局携手锐捷网络打响税改“攻坚战”
  5. pandas索引和复合索引
  6. virtuoso版图制作
  7. 【WORD文档部分消失】元素结束标记中的名称必须与开始标记中的元素类型相匹配
  8. 如何成为TD 系列【1】--在maya中进行python编辑准备
  9. 打印机连接错误(0x0000011b)的解决方法(实测好用)
  10. 华为鸿蒙不再孤单mmes,鸿蒙OS加持!曝华为Watch3有望下周发:圆表盘、支持eSIM通话...