根据父id查出所有子级,包括子级的子级,包括自身的id

sys_tenant_company_relation为关联表,
company_id为子id,parent_company_id为父id
SELECT DATA.* FROM(
SELECT
@ids as ids,
( SELECT @ids := GROUP_CONCAT(company_id)
FROM sys_tenant_company_relation
WHERE FIND_IN_SET(parent_company_id, @ids)
) as cids
FROM sys_tenant_company_relation
WHERE @ids IS NOT NULL AND @ids := #{pid}
) id, sys_tenant_company_relation DATA
WHERE FIND_IN_SET(DATA.company_id, ID.ids)

MYSQL5.7实现递归查询的更多相关文章

  1. CENTOS 6.5 平台离线编译安装 Mysql5.6.22

    一.下载源码包 http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.22.tar.gz 二.准备工作 卸载之前本机自带的MYSQL 安装 cmake,编 ...

  2. 在 Windows7 上按照 MySQL5.7

    在 Windows7 上按照 MySQL5.7 1.从官网下载最新版本的 MySQL,这里下载的是 mysql-5.7.17-win32: 2.将下载的 mysql-5.7.17-win32.zip ...

  3. Win7安装MySQL-5.7.16过程

    1.在C盘新建MYSQL文件夹:2.将mysql-5.7.16-winx64拷贝到C:\MYSQL文件夹下,更名为mysql-5.7.16:3.在mysql-5.7.16目录下,建my.ini文件,内 ...

  4. mysql-5.6.34 Installation from Source code

    Took me a while to suffer from the first successful souce code installation of mysql-5.6.34. Just pu ...

  5. mysql5.x升级至mysql5.7后导入之前数据库date出错的解决方法!

    mysql5.x升级至mysql5.7后导入之前数据库date出错的解决方法! 修改mysql5.7的配置文件即可解决,方法如下: linux版:找到mysql的安装路径进入默认的为/usr/shar ...

  6. 搭建LNAMP环境(一)- 源码安装MySQL5.6

    1.yum安装编译mysql需要的包 yum -y install gcc-c++ make cmake bison-devel ncurses-devel perl 2.为mysql创建一个新的用户 ...

  7. windows7 下 apache2.4 和 php5.5 及 mysql5.6 的安装与配置

    要准备的软件 httpd-2.4.9-win32-VC11.zip http://www.apachelounge.com/download/ php-5.5.13-Win32-VC11-x86.zi ...

  8. Mysql5.6 online ddl

    Innodb性能改善方面: --Users can add indexes and perform standard table alterations while the database rema ...

  9. CentOS7下mysql5.6修改默认编码

    参考原文教程:Centos7下修改mysql5.6编码方式 解决网站中文显示问号 解决办法: 修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操 ...

  10. mysql-5.7.9-winx64在windows上安装遇到的一些问题

    mysql5.7.9版本以上在windwos上安装时会遇到无法启动但是没有任何报错的问题,那是因为5.7.9以上的版本在MySQL目录下会缺少data目录: Data目录下存储的是一些表文件,用来描述 ...

随机推荐

  1. 【翻译】了解Flink-概览 -- Learn Flink-Overview

    了解Flink: 上手手册 目录 手册目标和范围 流处理 并行数据流 及时的流处理 有状态流处理 通过状态快照进行容错 翻译来源 Learn Flink:Overview , Learn Flink: ...

  2. 为什么vue3要使用ref

    vue3中使用ref来创建响应式数据,让习惯了选项式API的我很不习惯.因为得使用xxx.value来读写响应式数据,没有vue2中直接使用this.xxx来读写简洁. vue3这样设计的原因是原生J ...

  3. 【1】java之类与对象

    一.前言 面向对象就是一种组件化的设计思想. 面向对象特性 封装性:保护内部的定义结构安全性: 继承性:在已有的程序结构上继续扩充新的功能: 多态性:在某一个概念范围内的满足. 二.类与对象的定义和使 ...

  4. No.1.4

    选择器进阶 [复合选择器]:后代选择器:空格    语法:选择器1 选择器2 {css} 子代选择器:>   语法:选择器1>选择器2 {css} [并集选择器]:, 语法:选择器1 , ...

  5. PostgreSQL Win10 安装、创建表并添加数据(安装细节+常见错误避坑)

    1.下载:postgresql-14.5-1-windows-x64.exe 地址:Download PostgreSQL 2.安装: 下一步即可,注意记住期间设置的超级管理员密码和设置的端口号 安装 ...

  6. vue保持滚动条在底部

    mounted() { this.scrollToBottom(); }, updated: function () { this.scrollToBottom(); }, scrollToBotto ...

  7. wpBullet-20190604

    WordPress Plugins/Themes 和 PHP 的静态代码分析工具 Usage: wpbullet.py [-h] [--path PATH] [--enabled ENABLED] [ ...

  8. Docker学习——Dockerfile 指令详解(五)

    我们已经介绍了 FROM (指定基础镜像) , RUN(执行命令) ,还提及了 COPY , ADD ,其实 Dockerfile 功能很强大,它提供了十多个指令.下面我们继续讲解其他的指令. COP ...

  9. vue的易错点合集

    关于vue的操作,可以借鉴到一些Ajax的方法和思路,但是因为语法的不一样,所以易错点多在语法. 第一步要引用相对的方法 div的id名称应该与下文的el名称一致 挂载方法created,相当于aja ...

  10. 删除Windows10资源管理器多余的入口

    ///// 删除3D对象 定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Nam ...