返回顶部
首页 > 资讯 > 数据库 >如何在MySQL中给定父行找到所有子行
  • 677
分享到

如何在MySQL中给定父行找到所有子行

2023-06-06 14:06:49 677人浏览 八月长安
摘要

这篇文章将为大家详细讲解有关如何在MySQL中给定父行找到所有子行,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一.需求找到直接及简介(即JONES下属的下属)为JONES工作的所有员工。J

这篇文章将为大家详细讲解有关如何在MySQL中给定父行找到所有子行,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一.需求

找到直接及简介(即JONES下属的下属)为JONES工作的所有员工。

JONES下属的员工列表如下所示:

±------±-----+| ename | lvl |±------±-----+| JONES | 1 || SCOTT | 2 || FORD | 2 || ADAMS | 3 || SMITH | 3 |±------±-----+

二.解决方案

能够移到数的绝对顶部和底部是非常有用的。

对于这个解决方案,不需要特殊的格式设置。目标只是返回位于员工JONES下属的所有员工,其中包括JONES自己。

这种类型的查询展示了递归sql拓展的有用性,如oracle的connect by和SQL Server/DB 2/Mysql 8.0的with子句等。

with recursive emp2(ename,empno,lvl) as(SELECT ename,empno,1 lvl from emp  where ename = 'JONES'uNIOn ALLselect e1.ename,e1.empno,lvl + 1 from emp e1,emp2 e2 where e1.mgr = e2.empno)select ename,lvl from emp2

测试记录:

mysql> with recursive emp2(ename,empno,lvl) as -> ( -> SELECT ename,empno,1 lvl -> from emp -> where ename = 'JONES' -> union ALL -> select e1.ename,e1.empno,lvl + 1 -> from emp e1,emp2 e2 -> where e1.mgr = e2.empno -> ) -> select ename,lvl from emp2;+-------+------+| ename | lvl |+-------+------+| JONES | 1 || SCOTT | 2 || FORD | 2 || ADAMS | 3 || SMITH | 3 |+-------+------+5 rows in set (0.01 sec)

关于如何在MySQL中给定父行找到所有子行就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: 如何在MySQL中给定父行找到所有子行

本文链接: https://lsjlt.com/news/247549.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何在MySQL中给定父行找到所有子行
    这篇文章将为大家详细讲解有关如何在MySQL中给定父行找到所有子行,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一.需求找到直接及简介(即JONES下属的下属)为JONES工作的所有员工。J...
    99+
    2023-06-06
  • MySQL中给定父行找到所有子行的解决方案
    前言 备注:测试数据库版本为MySQL 8.0 如需要scott用户下建表及录入数据语句,可参考: scott建表及录入数据sql脚本 一.需求 找到直接及简介(即JONES下属的下属)为JONES工作的所有员工。...
    99+
    2022-05-12
    mysql树查询所有子 mysql按节点查询 mysql 父行
  • 如何在MySQL中执行子查询
    在MySQL中执行子查询可以通过将子查询语句包含在主查询语句中的方式来实现。以下是一个简单的例子: SELECT colum...
    99+
    2024-03-06
    MySQL
  • python如何寻找主串中所有指定子串下标
    目录python寻找主串中所有指定子串下标python字符串常用操作查找修改判断总结python寻找主串中所有指定子串下标 该函数可实现显示字符串中指定子串所有下标(首字下标) de...
    99+
    2023-01-03
    python指定子串下标 python主串 python寻找子串下标
  • Angular中父子组件间如何进行通信
    今天就跟大家聊聊有关Angular中父子组件间如何进行通信,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。通过Input和Ouput传值父组件:htm...
    99+
    2024-04-02
  • 如何在MySQL中查找包含两个特定列的所有表?
    要查找两个特定的列名称,请使用 information_schema.columns 在这里,我使用 Id 代替 columnA,使用 Name 代替 columnB -mysql> select table_name as...
    99+
    2023-10-22
  • 在 PostgreSQL 和 MySQL 中的所有表中查找特定数据
    使用大型数据库时,您可能会发现自己需要在多个表和列中查找特定值。这可能是一项具有挑战性的任务,尤其是当您不知道到底该去哪里查看时。幸运的是,有一些方法可以在 postgresql 和 ...
    99+
    2024-07-26
    mysql
  • Python怎么在字符串中找到正则表达式所匹配的所有子串
    这篇“Python怎么在字符串中找到正则表达式所匹配的所有子串”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python怎么...
    99+
    2023-06-08
  • MySQL中如何找到列名长度大于5的所有列?
    使用 HAVING 查找列名长度大于 5 的所有列。这将产生以下输出 -+-------------------+-------------------------+ | TABLE_NAME | COLUMN_NAM...
    99+
    2023-10-22
  • MySQL中如何找到列名长度大于5的所有列
    可以使用以下SQL语句来找到列名长度大于5的所有列:sqlSELECT COLUMN_NAMEFROM INFORMATIO...
    99+
    2023-10-20
    MySQL
  • 如何解决MySQL报错:父行有外键约束
    要解决MySQL报错:父行有外键约束,可以采取以下步骤:1. 理解报错信息:报错表明你正在尝试删除或更改表中的一行,但是这行数据被其...
    99+
    2023-10-18
    MySQL
  • 删除字符串中包含给定切片中任何单词的所有子串
    本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《删除字符串中包含给定切片中任何单词的所有子串》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~问题内容我正...
    99+
    2024-04-04
  • 【MySQL】如何查询MySQL执行过的所有SQL语句
    文章目录 1 MySQL 的通常查询日志实验2 参考资料 1 MySQL 的通常查询日志实验 通过 MySQL 的通用查询日志可以找到你指定的每一条 sql 语句。很明显会有严重的性能损耗...
    99+
    2023-09-22
    mysql 数据库
  • Linux 如何快速找到运行中的进程
    1 进程概述 通俗的讲程序是一个包含可以执行代码的静态的文件。进程是一个开始执行但是还没有结束的程序的实例。 当程序被系统调用到内存以后,系统会给程序分配一定的资源(内存,设备等等)然后进行一系列的复杂操作,使程序变成进...
    99+
    2022-06-04
    linux查看运行中的进程 linux 进程 linux运行进程
  • 如何利用Pandas删除某列指定值所在的行
    目录前言1.data.dropna()1-1 axis确定删除存在缺失值的行或者是列1-2 how 确定存在缺失值时,是否删除行或者列1-3 thresh=n表示保留至少含有n个非n...
    99+
    2024-04-02
  • 如何在MySQL中执行事务
    在MySQL中执行事务可以通过以下步骤: 使用BEGIN或START TRANSACTION语句开始一个事务。 在事务中执行...
    99+
    2024-04-09
    MySQL
  • 如何解决MySQL报错:子行有外键约束
    要解决MySQL报错“子行有外键约束”,可以采取以下几个步骤:1. 查找外键约束:首先,需要找到引起报错的外键约束。可以通过查询表的...
    99+
    2023-10-18
    MySQL
  • CentOS下如何在目录中找出所有大文件
    这篇文章主要讲解了“CentOS下如何在目录中找出所有大文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS下如何在目录中找出所有大文件”吧!Q. 如何在目录中找出所有大文件A.1...
    99+
    2023-06-10
  • PHP如何在字符串所有新行之前插入 HTML 换行标记
    这篇文章将为大家详细讲解有关PHP如何在字符串所有新行之前插入 HTML 换行标记,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 : PHP 中使用 nl2br() 函数可以在字符串中的所有换行符之前插入...
    99+
    2024-04-02
  • dos中如何使用sed找到关键字所在行并将其前面的第一个字符删除
    小编给大家分享一下dos中如何使用sed找到关键字所在行并将其前面的第一个字符删除,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!sed找到关键字所在行并将其前面的...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作