ON 链接(JOIN)
- INNER JOIN:只保留中间重叠部分
- LEFT JOIN:左表全保留 + 匹配右表
- RIGHT JOIN:右表全保留 + 匹配左表
- FULL JOIN:两张表全部保留
- CROSS JOIN:所有组合全排列
别名不是必须,但是一个好习惯。
ON 为 联结键
INNER JOIN / 内联结
sql
select g.id,g.brand,g.model,info.storage,info.power,info.architecture
from GPU as g
INNER JOIN GPUInfo as info
ON g.id = info.gpu_id;内联结只会输出 满足条件 的结果。
比如 g 有,而 info 没有,就不会出现在 result 中。
OUTER JOIN / 外联结
sql
select g.id,g.brand,g.model,
info.storage,info.power,info.architecture
from GPU as g
LEFT OUTER JOIN GPUInfo as info
ON g.id = info.gpu_id;外联结需要指定 LEFT 或 RIGHT,为指定的表进行扩张。
CROSS JOIN / 交叉联结
sql
select g.id,g.brand,g.model,
info.storage,info.power,info.architecture
from GPU as g
CROSS JOIN GPUInfo as info;没有 ON !
结果非常多
