Mysql链接查询

1、Mysql链接查询

1.1、自连接

自连接:两张关联表都是同一张表,通过自身关联来查询

 1.1.1、查询每个员工的员工编号、员工姓名、领导编号、领导姓名

分析:员工编号、姓名在员工表,领导编号、姓名也在员工表

SELECT e.ENAME,e.EMPNO,e.MGR,m.ENAME from emp e,emp m where e.MGR = m.EMPNO; -- 关联查询

 

1.2、左链接:

左链接:以左表为主,左表的数据全部显示,右表的数据如果匹配到了就显示,没有匹配到就用空值代替

要求:查询所有员工的员工编号、员工姓名、部门编号、部门名称

SELECT e.ENAME,e.EMPNO,e.MGR,m.ENAME from emp e LEFT JOIN emp m on(e.MGR = m.EMPNO);

左链接分析:

 

1.3右链接:

右链接:以右表为主,右边的数据全部显示,左边的数据如果显示到了就显示,没有匹配到用空值代替

要求:查询所有部门下的员工编号、员工姓名、部门编号、部门名称: 

 SELECT e.ENAME,e.EMPNO,e.MGR,m.ENAME from emp e RIGHT JOIN emp m on(e.MGR = m.EMPNO);

 

1.4、结果集合并:

将两个查询结果集合并,可以通过UNION、UNION ALL

面试题:unnion、union all区别:

UNION:返回查询结果的全部内容,重复数据不显示

UNION ALL:返回查询结果的全部内容,重复数据也显示

示例:

UNION

UNION ALL:

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值