补充知识

主键(primary key):一般关系数据表中,都会有一个属性列设置为 主键(primary key)。主键是唯一标识一条数据的,不会重复。我们需要依靠主键将两个表连接起来。

基本语法

1
2
3
4
5
6
7
SELECT column, another_table_column, …
FROM mytable //(主表)
INNER JOIN another_table //(要连接的表)
ON mytable.id = another_table.id //(想象一下刚才讲的主键连接,两个相同的连成1条)
WHERE condition(s)
ORDER BY column, … ASC/DESC
LIMIT num_limit OFFSET num_offset;

INNER JOIN

原理图如下:
INNER JOIN
利用ON将两表进行连接,若两表无相同元素返回空值。

LEFT/RIGHT/FULL JOIN

原理图:
LEFT JOINLEFT
RIGHT JOINRIGHT
FULL JOINFULL
在表A 连接 B, LEFT JOIN保留A的所有行,不管有没有能匹配上B
反过来 RIGHT JOIN则保留所有B里的行
最后FULL JOIN 不管有没有匹配上,同时保留A和B里的所有行

小提示

在使用OUTER JOIN时往往需要利用特殊关键字NULL进行选取