MySQL表连接
2024-08-27 06:26:36
有3种:
JOIN 按照功能大致分为如下三类:
CROSS JOIN (交叉连接)
INNER JOIN (内连接或等值连接)。
OUTER JOIN (外连接)
交叉连接CROSS JOIN
交叉连接也叫笛卡尔积连接。笛卡尔积是指在数学中,两个集合 X 和 Y 的笛卡尓积( Cartesian product ),
又称直积,表示为 X*Y ,第一个对象是 X 的成员而第二个对象是 Y 的所有可能有序对的其中一个成员。
隐式交叉连接
SELECT * FROM A, B
显式交叉连接
SELECT * FROM A CROSS JOIN B
内连接INNER JOIN
内连接也叫等值连接,内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。
隐式内连接
SELECT * FROM A,B WHERE A.id = B.id
显式内连接
SELECT * FROM A INNER JOIN B ON A.id = B.id
外连接
外联接可以是左向外联接、右向外联接或完整外部联接。也就是说外连接又分为:左外连接、右外连接、全外连接。外连接需要有主表或者保留表的概念
左外连接LEFT JOIN 或者 LEFT OUTER JOIN
SELECT * FROM A LEFT JOIN B ON A.id = B.id
右外连接:RIGHT JOIN 或者 RIGHT OUTER JOIN
SELECT * FROM A RIGHT JOIN B ON A.id = B.id
外连接总结:
通过业务需求,分析主从表
如果使用 LEFT JOIN ,则主表在它左边
如果使用 RIGHT JOIN ,则主表在它右边
查询结果以主表为主,从表记录匹配不到,则补 null
ok
最新文章
- iOS $299刀企业证书申请的过程以及细节补充
- WPF DatePicker默认显示当前日期
- bzoj 1637: [Usaco2007 Mar]Balanced Lineup
- Java 获取类名,函数名,行数
- Java好文统计( 引用 )
- ASP.NET的分页方法(二)
- N - Is It A Tree?(判断环)
- ps命令用法
- Java实现CORS跨域请求
- SQL中锁表语句简单理解(针对于一个表)
- 重构仿vue社区代码
- iOS开发--XMPPFramework--框架的导入(二)
- Python/ MySQL练习题(一)
- POJ 1015 Jury Compromise (算竞进阶习题)
- Linux中设置服务自启动的三种方式,ln -s 建立启动软连接
- 记录一次MyEclipse打开jsp文件出现Error的解决办法
- JAVA学习笔记系列2-Java程序的运行机制
- 容器中JVM获取真实的CPU核数
- get方式传值中文乱码
- 10.30 正睿停课训练 Day12
热门文章
- 数据结构之链表(LinkedList)(一)
- 一、ribbon如何集成在openfeign中使用
- JS权威指南读书笔记(二)
- Android笔记(三十四) Android中线程之间的通信(六)Handle中的post()方法详解
- Android笔记(二十六) Android中的广播——BroadcastReceiver
- 【DRF框架】序列化组件
- 【OF框架】在部署中使用 Windows身份认证
- grafana忘记登陆密码
- Codeforces #366 Div. 2 C. Thor (模拟
- Python获取爬虫数据, r.text 与 r.content 的区别