SQL RIGHT JOIN 关键字

SQL RIGHT JOIN 关键字 #

RIGHT JOIN 关键字从右表(table2)返回所有的行,即使左表(table1)中没有匹配。如果左表中没有匹配,则结果为 NULL。

SQL RIGHT JOIN 语法 #

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name=table2.column_name;

或:

SELECT column_name(s)
FROM table1
RIGHT OUTER JOIN table2
ON table1.column_name=table2.column_name;

注释:在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN。

SQL RIGHT JOIN 实例 #

下面的 SQL 语句将返回网站的访问记录。

以下实例中我们把 domains 作为左表,logs 作为右表:

MariaDB [learnsql]> select domains.domainname,logs.google,logs.baidu,logs.sogou from domains right join logs on domains.id=logs.id order by logs.baidu desc;
+---------------+--------+--------+--------+
| domainname    | google | baidu  | sogou  |
+---------------+--------+--------+--------+
| NULL          | 000749 | 002977 | 000358 |
| NULL          | 002123 | 002939 | 000331 |
| NULL          | 002701 | 002843 | 000315 |
| pornie.in     | 002552 | 002840 | 000112 |
| getos.org     | 001864 | 002745 | 000198 |
| NULL          | 000714 | 002690 | 000188 |
| ltecn.com     | 002466 | 002628 | 000204 |
| NULL          | 001496 | 002621 | 000482 |
| NULL          | 001975 | 002530 | 000484 |
| NULL          | 001330 | 002495 | 000277 |
| alair.cn      | 001698 | 002486 | 000106 |
| dotbbq.com    | 002927 | 002448 | 000370 |
| NULL          | 000774 | 002436 | 000252 |
| raspi.in      | 001532 | 002424 | 000423 |
| suopo.net     | 001531 | 002344 | 000147 |
| NULL          | 001574 | 002295 | 000391 |
| aosp.me       | 001724 | 002267 | 000449 |
| regex.in      | 000945 | 002217 | 000416 |
| NULL          | 000710 | 002094 | 000226 |
| pornie.top    | 002561 | 002076 | 000366 |
| NULL          | 001003 | 002075 | 000315 |
| NULL          | 001638 | 002001 | 000222 |
| NULL          | 002167 | 001985 | 000181 |
| NULL          | 002010 | 001746 | 000266 |
| NULL          | 002872 | 001685 | 000182 |
| NULL          | 001770 | 001660 | 000420 |
| NULL          | 002980 | 001627 | 000188 |
| bailuyuan.org | 000775 | 001534 | 000305 |
| blbl.dev      | 000919 | 001324 | 000176 |
| linuxuc.com   | 002483 | 001155 | 000466 |
| ymqd.net      | 002501 | 001089 | 000321 |
| NULL          | 000999 | 001087 | 000312 |
| NULL          | 001468 | 001043 | 000381 |
| ciux.org      | 001394 | 000944 | 000222 |
| NULL          | 001187 | 000938 | 000457 |
| avlist.top    | 002042 | 000932 | 000406 |
| NULL          | 002564 | 000912 | 000420 |
| NULL          | 001014 | 000906 | 000299 |
| NULL          | 002246 | 000849 | 000119 |
| NULL          | 000115 | 000732 | 000611 |
| NULL          | 000100 | 000532 | 000011 |
| lyq.wiki      | 002543 | 000395 | 000387 |
| ustv.xyz      | 001616 | 000390 | 000381 |
| les.moe       | 001166 | 000350 | 000402 |
| unixetc.com   | 001467 | 000348 | 000395 |
| NULL          | 002420 | 000188 | 000299 |
| zjq.xyz       | 002880 | 000137 | 000369 |
+---------------+--------+--------+--------+
47 rows in set (0.001 sec)

注释:RIGHT JOIN 关键字从右表(logs)返回所有的行,即使左表(domains)中没有匹配。