美文网首页
MySQL 表示 父-子关系

MySQL 表示 父-子关系

作者: 只是甲 | 来源:发表于2021-02-24 14:21 被阅读0次

备注:测试数据库版本为MySQL 8.0

如需要scott用户下建表及录入数据语句,可参考:
scott建表及录入数据sql脚本

一.需求

将父记录的信息跟只记录中的数据放在一起。例如,显示每个员工的姓名及其经理的姓名。

返回的结果集:
+-----------------------+
| emps_and_mgrs |
+-----------------------+
| SMITH woks for FORD |
| ALLEN woks for BLAKE |
| WARD woks for BLAKE |
| JONES woks for KING |
| MARTIN woks for BLAKE |
| BLAKE woks for KING |
| CLARK woks for KING |
| SCOTT woks for JONES |
| TURNER woks for BLAKE |
| ADAMS woks for SCOTT |
| JAMES woks for BLAKE |
| FORD woks for JONES |
| MILLER woks for CLARK |
+-----------------------+

二.解决方案

将MGR和EMPNO 自联接EMP表,找到每个员工的经理。
然后根据MySQL提供的字符串联接函数,生成结果集中需要的字符串。

select  concat(a.ename, ' woks for ',b.ename) as emps_and_mgrs
  from  emp a, emp b
 where  a.mgr = b.empno;

测试记录:

mysql> select  concat(a.ename, ' woks for ',b.ename) as emps_and_mgrs
    ->   from  emp a, emp b
    ->  where  a.mgr = b.empno;
+-----------------------+
| emps_and_mgrs         |
+-----------------------+
| SMITH woks for FORD   |
| ALLEN woks for BLAKE  |
| WARD woks for BLAKE   |
| JONES woks for KING   |
| MARTIN woks for BLAKE |
| BLAKE woks for KING   |
| CLARK woks for KING   |
| SCOTT woks for JONES  |
| TURNER woks for BLAKE |
| ADAMS woks for SCOTT  |
| JAMES woks for BLAKE  |
| FORD woks for JONES   |
| MILLER woks for CLARK |
+-----------------------+
13 rows in set (0.00 sec)

相关文章

  • MySQL 表示 父-子关系

    备注:测试数据库版本为MySQL 8.0 如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数...

  • MySQL 表示 子-父-祖父关系

    备注:测试数据库版本为MySQL 8.0 如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数...

  • uml类图关系简析

    泛化 【定义】是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为,或者子接口与父接口的...

  • 自动布局之AutoResizing

    上侧实线:表示【子控件】距离【父控件】上侧间距固定;下侧实线:表示【子控件】距离【父控件】下侧间距固定;左侧实线:...

  • 设计模式实践之类之间的六种关系

    类之间的六种关系 1、继承(Generalization) 继承关系,表示了子类和父类之间的关系 箭头:子类指向父...

  • layout_gravity和gravity的区别

    layout_gravity 表示组件自身在父组件中的位置gravity 表示组件的子组件...

  • 人与人之间的关系

    关系关系处好是有关系, 处不好,咱俩什么关系? 父与子,父如山,顶天立地,子如树 站如松,做如钟,智勇双全。 母与...

  • 2018-09-21 vue初学八(组件子传父)

    最简单的子传父组件 子传父 用事件传,这个事件是自定义事件 用$emit("事件",参数)来表示

  • 02.正反向运动与父子关系分类

    正向运动(FK):父物体带动子物体 反向运动(IK):子物体牵动父物体 (生活中)的父子关系——非连接性父子关系(...

  • 《Java编程的逻辑》笔记15--初识继承和多态

    继承 继承概念(1)计算机程序经常使用类之间的继承关系来表示对象之间的分类关系(2)在继承关系中,有父类和子类,父...

网友评论

      本文标题:MySQL 表示 父-子关系

      本文链接:https://www.haomeiwen.com/subject/blmamktx.html