zoukankan      html  css  js  c++  java
  • mysql 向上递归

    SELECT T1.lvl,T2.*  #lvl 跟查询无限下级的level一样
         FROM (
             SELECT
                 @r AS _id,  #变量取个别名
                 (SELECT @r := parent_id FROM sys_depart WHERE id = _id limit 1) AS parent_id, #limit 1不加会报错,因为子查询不允许有多个,我当时没加在navicat是没问题,但是项目里就报错!  parent_id 你的父级id的字段 sys_depart 你的表名
                   @l := @l + 1 AS lvl  # T1.lvl 的来历,没用可以不要!或者感觉看不懂可以取消了
             FROM
                 (SELECT @r := '156532be0aa54d3ea1',@l := 0) vars, # @r := '9a61ebfffcc5430480fdd21245b1bf0c' 就是你要查的id,@l := 0 定义T1.lvl的初始值为0 没用可以取消不要
                 sys_depart h
             WHERE parent_id <> 0) T1  #parent_id 你的父级id的字段 查询条件就是不等于0,可以根据自己业务做修改
        JOIN sys_depart T2
         ON T1.parent_id = T2.id
         ORDER BY T1.lvl DESC;
  • 相关阅读:
    nexus
    图片水印
    springmvc+mybatis+spring+redis
    web-fragment模块化使用
    jackson的使用
    httpClient
    ftp上传文件
    windows server 2008 R2中建立ftp站点
    保存网络中的文件
    读取excel文件
  • 原文地址:https://www.cnblogs.com/LarryBlogger/p/15430025.html
Copyright © 2011-2022 走看看