左连接&右连接&内连接

Inner Join(与Join同义):根据条件,拿左边的表中的每一行去右边的表中匹配,只要符合条件的就列出来;
Left Join:根据条件,拿左边的表中的每一行去右边的表中匹配,即使没有匹配的行,左表的行也会被列出来;
Right Join:根据条件,拿右边的表中的每一行去左边的表中匹配,即使没有匹配的行,右表的行也会被列出来;

Inner  Join内连接也叫等值连接,Left Join/Right Join是外连接;

SELECT A.id, A.name, B.id, B.name FROM A LEFT JOIN B ON A.id = B.id;
SELECT A.id, A.name, B.id, B.name FROM A RIGHT JOIN B ON A.id = B.id;
SELECT A.id, A.name, B.id, B.name FROM A INNER JOIN B ON A.id = B.id;

其中Inner Join的性能比较快,因为Inner Join是等值连接,返回的行数比较少;能用Inner Join的地方尽量用Inner Join。

猜你喜欢

转载自www.cnblogs.com/yuanfei1110111/p/10256778.html