赛捷软件论坛's Archiver

vicky.yu 发表于 2019-6-13 15:57

SQL RIGHT JOIN 关键字

SQL RIGHT JOIN 关键字
RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。

RIGHT JOIN 关键字语法
SELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注释:在某些数据库中, RIGHT JOIN 称为 RIGHT OUTER JOIN。

原始的表 (用在例子中的):
"Persons" 表:

Id_P        LastName        FirstName        Address        City
1        Adams        John        Oxford Street        London
2        Bush        George        Fifth Avenue        New York
3        Carter        Thomas        Changan Street        Beijing
"Orders" 表:

Id_O        OrderNo        Id_P
1        77895        3
2        44678        3
3        22456        1
4        24562        1
5        34764        65
右连接(RIGHT JOIN)实例
现在,我们希望列出所有的定单,以及定购它们的人 - 如果有的话。

您可以使用下面的 SELECT 语句:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
RIGHT JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName
结果集:

LastName        FirstName        OrderNo
Adams        John        22456
Adams        John        24562
Carter        Thomas        77895
Carter        Thomas        44678
                 34764
RIGHT JOIN 关键字会从右表 (Orders) 那里返回所有的行,即使在左表 (Persons) 中没有匹配的行。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.