美文网首页Java 核心技术MySQL
MySql里left join和right join的区别

MySql里left join和right join的区别

作者: 踏云小子 | 来源:发表于2018-03-01 11:00 被阅读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

相关文章

网友评论

    本文标题:MySql里left join和right join的区别

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