多表查询整理
// 内连接
// 内连接查询的是两张表的连接部分
// 隐式内连接
// select 字段列表 from 表1, 表2 ... where 条件...;
// 显式内连接
// select 字段列表 from 表1 [inner] join 表2 on 连接条件...;
// --------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------
// 外连接
// 会查询两张表相连接的部分,并且包含其中一张表的所有数据
// 左外连接
// select 字段列表 from 表1 left [outer] join 表2 on 条件...;
// 右外连接
// select 字段列表 from 表2 right [outer] join 表2 on 条件...;
// --------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------
// 自连接
// 可以是内连接查询也可以是外连接查询
// 查询员工对应领导的名字,必须要使用别名
// select 字段列表 from 表A 别名A join 表A 别名B on 条件...;
// --------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------
// 联合查询
// 使用union all 时表示单纯合并,可能会包含重复元素,想要去重直接去掉all即可
// 把多次查询结果合并,形成一个新的结果集
// 联合查询的字段列表要一致
// select 字段列表 from 表A...
// union [all]
// select 字段列表 from 表B...;
// --------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------
// 子查询
// 子查询可以理解为函数的嵌套
// select * from t1 where column = (select column1 from t2);
// 子查询的外部语句可以是insert/update/delete/select中的任何一个
// 根据子查询结果不同,分为
// 标量子查询
select * from test where belong = (select id from ment where name = '开发部');
// 列子查询
// 指的是子查询返回的结果是一列,可以有多行
// 常用操作符
// in/not in/any/some/all
// any = some
// 行子查询
// 指的是子查询返回的结果是一列,可以有多行
// 表子查询
// 指的是子查询返回的结果是多行多列
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义