Java 核心技术MySQL

MySql里left join和right join的区别

2018-03-01  本文已影响5人  踏云小子

LEFT JOIN

从左表里返回所有匹配的数据,即使在右边里没有匹配的


image.png

比如:

image.png image.png
SELECT * FROM `user` u LEFT JOIN `vocation` v ON u.userId = v.userId 

查询结果如下


image.png

这里用ON不能用WHERE:
ON用作连接条件,WHERE只能用于筛选结果,比如SELECT * FROM `user` u LEFT JOIN `vocation` v ON u.userId = v.userId WHERE u.`username` = '韦小宝'

image.png

RIGHT JOIN

与LEFT JOIN相反,从右表里返回所有匹配的数据,即使在左边里没有匹配的


image.png
SELECT * FROM `user` u RIGHT JOIN `vocation` v ON u.userId = v.userId 
image.png

INNER JOIN/ JOIN

返回左表、右表里共有的部分


image.png

比如

SELECT * FROM `user` u INNER JOIN `vocation` v ON u.userId = v.userId 
image.png
上一篇 下一篇

猜你喜欢

热点阅读