语法:
select 查询列表
from 表1 别名
join 表2 别名
on 连接条件
where 筛选条件
1.内连接 inner
SELECT `gender`,d.`from_date`,salary FROM `dept_emp` AS d INNER JOIN `employees` AS e ON d.`emp_no`=e.`emp_no` INNER JOIN salaries AS s ON s.`emp_no`=e.`emp_no` ORDER BY salary ASC;
非等值连接:
自连接:
2.外连接:
应用场景:用于查询一个表中有,另一个没有的记录
特点:1.外连接用于查询的结果为主表中的所有记录,如果从表中可以匹配则匹配,不可以匹配的则显示null
左外: left 【outer】 leftjoin左边的是主表
select 表1.a ,表2.b from 表1 left outer join 表2;
右外: right 【outer】 rightjoin 右边的是主表
全外:full 【outer】 内连接结果+表1中有表1有表二没有的+表二有表一没有的 mysql不支持
3.交叉连接:cross
使用99语法的标准实现的笛卡尔乘积(全连接)
select B.*, A.a from B cross join A;
总结:
原文:https://www.cnblogs.com/BookMiki/p/14145767.html