SQL JOIN #
SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。
最常见的 JOIN 类型:SQL INNER JOIN(简单的 JOIN)。 SQL INNER JOIN 从多个表中返回满足 JOIN 条件的所有行。
JOIN演示 #
sqlite> select domains.id,domains.domainname,logs.google,logs.baidu from domains inner join logs on domains.id=logs.id;
ID DomainName google baidu
-- ---------------- ------ -----
1 aisoc.cn 1003 2075
2 ado.ink 1770 1660
3 nrdoc.com 1496 2621
4 getos.org 1864 2745
5 litiaotiao.cn 1574 2295
6 dotbbq.com 2927 2448
7 lyq.wiki 2543 395
8 les.moe 1166 350
9 regex.in 945 2217
10 wmts.top 2010 1746
11 sharpbang.cn 714 2690
12 blbl.dev 919 1324
13 raspi.in 1532 2424
14 pornie.in 2552 2840
15 aosp.me 1724 2267
16 bailuyuan.org 775 1534
17 linuxuc.com 2483 1155
18 ustv.xyz 1616 390
19 unixetc.com 1467 348
20 ciux.org 1394 944
21 avlist.top 2042 932
22 suopo.net 1531 2344
23 vbar.xyz 1975 2530
24 ltecn.com 2466 2628
25 pornie.top 2561 2076
26 sjcs.top 710 2094
27 imagemagick.top 2980 1627
28 oppa.top 1187 938
29 kodis.top 1638 2001
30 vpshz.top 999 1087
31 smdm.top 2701 2843
32 commandline.top 2123 2939
33 wxtx.top 2420 188
34 kjzx.top 1468 1043
35 aido.cc 1014 906
36 ustv.top 2167 1985
37 colorhexcode.top 2246 849
38 rgbs.top 2872 1685
39 autohotkey.top 1330 2495
40 opensuse.top 774 2436
41 qgis.top 2564 912
42 hugotheme.top 749 2977
43 zjq.xyz 2880 137
44 alair.cn 1698 2486
45 ymqd.net 2501 1089
46 nasplus.cn 2662 1891
47 manjushri.cn 546 2675
48 pushto.cn 2231 2769
49 gfwlist.cn 2812 1358
50 byhzg.cn 2196 1559
51 guwendaquan.cn 2234 2770
52 mua.wiki 2147 2425
sqlite>
不同的 SQL JOIN #
在我们继续讲解实例之前,我们先列出您可以使用的不同的 SQL JOIN 类型:
- INNER JOIN:如果表中有至少一个匹配,则返回行
- LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
- RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
- FULL JOIN:只要其中一个表中存在匹配,则返回行