数据库基础入门 — 关联查询

人生乱弹 2年前 (2023) admin
11 0

我是南城余!阿里云开发者平台专家博士证书获得者!
欢迎关注我的博客!一同成长!
一名从事运维开发的worker,记录分享学习。
专注于AI,运维开发,windows Linux 系统领域的分享!
本章节对应知识库
南城余 — MySQL · 语雀

第06章_多表查询.pdf


--多表查询 以及多表查询在from后面的别名命名规范(在select和where上都要使用,否则报错)
--内连接1.
select e.last_name,d.department_name,l.city
from employees e,departments d,locations l
where e.department_id = d.department_id and d.location_id = l.location_id

--SQL99实现内连接2.(inner可以省略)
select e.last_name,d.department_name,l.city
from employees e inner join departments d
on e.department_id = d.department_id
join locations l
on d.location_id = l.location_id

--左外连接(加上left后outer也可以省略)
select e.last_name,d.department_name
from employees e left outer join departments d
on e.department_id = d.department_id

--右外连接(加上left后outer也可以省略)
select e.last_name,d.department_name
from employees e right outer join departments d
on e.department_id = d.department_id

/*满外连接
可通过union 或者 union all实现
union:去重复 union all:不去重
*/

select e.last_name,d.department_name
from employees e left outer join departments d
on e.department_id = d.department_id
union all
select e.last_name,d.department_name
from employees e right outer join departments d
on e.department_id = d.department_id

表连接的约束条件可以有三种方式:WHERE, ON, USING
WHERE:适用于所有关联查询
ON :只能和JOIN一起使用,只能写关联条件。虽然关联条件可以并到WHERE中和其他条件一起 写,但分开写可读性更好。
USING:只能和JOIN一起使用,而且要求两个关联字段在关联表中名称一致,而且只能表示关联字 段值相等
 

文章来源

版权声明:admin 发表于 2023年11月29日 pm7:31。
转载请注明:数据库基础入门 — 关联查询 | 银库

相关文章

本站主题由 OneNav 一为主题强力驱动