小胖虎带你们了解MySQL中的连接查询
Posted CURRY_yyds
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小胖虎带你们了解MySQL中的连接查询相关的知识,希望对你有一定的参考价值。
1.交叉连接(笛卡尔积)
交叉连接(Cross Join),又称“笛卡尔连接(Cartesian Join)”或“叉乘(Product)”,它是所有类型的内连接的基础。
语法:SELECT * FROM 表A CROSS join 表B (不推荐)
SELECT * FROM course c,student s (常用)
SELECT * FROM course c,student s
2.内连接查询概要--------主键连外键
内连接基于连接谓词,它将两张表 ( 如A 和 B) 的列组合在一起,产生新的结果表。
语法:SELECT s.name 姓名,s.studentNo 学号 FROM course c,student s WHERE c.studentNo=s.studentNo AND s.name='小何'
SELECT s.name 姓名,s.studentNo 学号
FROM course c,student s
WHERE c.studentNo=s.studentNo AND s.name='小何'
注意:连接依据的列可能包含 null 值,null 值不与任何值匹配(甚至和它本身)。
3.外连接查询概念
在内连接查询中,只有满足连接条件的记录才能出现在查询结果中。但在实际应用中,如果希望不满足连接条件的记录也在查询结果中出现,这时需要使用外连接查询。
语法:SELECT 字段名称 FROM 表名 1 LEFT|RIGHT|FULL [OUTER] JOIN 表名 2 ON 表名 1. 字段名 1= 表名 2. 字段名 2
SELECT 字段名称
FROM 表名 1 LEFT|RIGHT|FULL [OUTER]
JOIN 表名 2 ON 表名 1. 字段名 1= 表名 2. 字段名 2
总结:本次小胖虎就写到这里,感谢大家对小胖虎的支持。
告诉大家一个小秘密——外键命名:FK_从表_主表_主表的主键/唯一约束(!!!从表不能引用)
以上是关于小胖虎带你们了解MySQL中的连接查询的主要内容,如果未能解决你的问题,请参考以下文章