码迷,mamicode.com
首页 > 数据库 > 详细

mysql自连接

时间:2020-04-04 14:41:37      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:种类   完全   man   mys   管理   ast   定义   rom   koch   

#自连接
SELECT
b.* from shopping as a,shopping as b where a.name=惠惠 and a.price<b.price order by b.id
#子查询
SELECT * FROM shopping 
WHERE price>(select price from shopping where name=惠惠)
#子查询
SELECT e.ename,(SELECT ename FROM emp d WHERE d.empno=e.mgr) AS boss FROM emp e; 
#上面的是一张职员信息表,如果我要查询这张表中的每个职员的上司,那么必须使用自连接来查询.所以为了能实现这个查询,需要给这张表取两个别名,而且查询中所用的所有数据都需要加上表的别名前缀,因为两个表的数据列完全一样.

  

#选择指定员工的姓名,员工号,以及他的管理者的姓名和员工号,结果类似于下面的格式
employees   Emp     manager    Mgr
kochhar     101     king       100

SELECT e.last_name employees,e.`employee_id` "Emp#",m.last_name manager,m.employee_id "Mgr#"
FROM employees e
INNER JOIN employees m ON e.`manager_id`=m.employee_id
WHERE e.`last_name`=‘kochhar‘;

  

自连接是连接的一种用法,但并不是连接的一种类型,因为他的本质是把一张表当成两张表来使用。

mysql有时在信息查询时需要进行对自身连接(自连接),所以我们需要为表定义别名。

mysql自连接

标签:种类   完全   man   mys   管理   ast   定义   rom   koch   

原文地址:https://www.cnblogs.com/jing-yan/p/12631556.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!