什么是内连接、外连接、交叉连结、笛卡尔积?
创作时间:
作者:
@小白创作中心
什么是内连接、外连接、交叉连结、笛卡尔积?
引用
CSDN
1.
https://blog.csdn.net/qq_41840843/article/details/139465346
在数据库查询中,连接(Join)是一种用于将两个或多个表中的行联合起来的操作。在实际应用中,常见的连接类型包括内连接、外连接、交叉连接以及全外连接,每种连接类型都有其独特的特点和用途。
1、内连接(Inner Join)
内连接是连接操作中最常见的一种类型。它只返回两个表中在连接条件下匹配的行。简而言之,内连接只包含那些在两个表中都存在匹配值的行。
SELECT a.*, b.*
FROM table1 AS a
INNER JOIN table2 AS b ON a.key = b.key;
2、左外连接(Left Outer Join)
左外连接会返回左表中的所有行,以及右表中与左表中行匹配的行。如果右表中没有匹配的行,那么结果集中右表对应的列将包含 NULL 值。
SELECT a.*, b.*
FROM table1 AS a
LEFT JOIN table2 AS b ON a.key = b.key;
3、右外连接(Right Outer Join)
右外连接与左外连接类似,不过它返回的是右表中的所有行,以及左表中与右表中行匹配的行。如果左表中没有匹配的行,那么结果集中左表对应的列将包含 NULL 值。
SELECT a.*, b.*
FROM table1 AS a
RIGHT JOIN table2 AS b ON a.key = b.key;
4、全外连接(Full Outer Join)
全外连接返回两个表中的所有行,不管另外一边的表中是否存在与它们匹配的行。如果某一边的表中没有匹配的行,那么结果集中对应的列将包含 NULL 值。
SELECT a.*, b.*
FROM table1 AS a
FULL OUTER JOIN table2 AS b ON a.key = b.key;
5、交叉连接(Cross Join)
交叉连接是一种特殊的连接,它返回两个表的笛卡尔积,即两个表中的每一行都与另一个表中的每一行组合在一起。交叉连接不使用任何匹配或者选取条件。
SELECT a.*, b.*
FROM table1 AS a
CROSS JOIN table2 AS b;
热门推荐
张一山胜诉:用法律武器反击网络谣言
7天煮苹果挑战:每天一碗,健康大变身!
秋冬养生新宠:苹果红枣枸杞煮水,熬夜族的救星!
秋冬养生新宠:中医推荐的煮苹果水
煮苹果水:养生饮品还是“神水”?
从考古发现到文化创新:李家岗遗址与塱头古村的文化传承新探索
提升写作技能:七个高效练习方法
风流果的功效与用法
微信隐藏功能大揭秘:5个实用技巧让你成为朋友圈中的"技术达人"
重大发现!湖南李家岗遗址揭示8000年前稻作文明真相
久坐危害大?营养师教你三招对抗便秘和肥胖
久坐软沙发伤脊椎?医生教你正确姿势!
久坐族必学:10分钟养生小技巧
彭头山遗址:长江中游文明探秘
彭头山遗址新发现:8000年前的稻田与长江文明曙光
重大发现!湖南常德李家岗遗址发现8000年前古稻田
彭头山遗址:揭秘中国最早的高台建筑
冬季腊梅修剪技巧:打造你的私人花园
春季和秋季:腊梅修剪的最佳时期
湖北特产大揭秘:从房县黑木耳到孝感麻糖,这些特色美食让你大饱口福!
河坊街:穿越千年的网红打卡圣地
杭州植物园打卡秘籍:拍出朋友圈大片!
秋日必打卡:杭州灵隐寺赏枫全攻略
成语自然什么成语?成语自然妙趣:尽览自然景象的千古佳句!
从陈欣欣离婚看心理健康:如何走出阴霾,重启人生
高离婚率背后的真相:社会转型下的婚姻危机
高考报名没有身份证怎么办?户籍证明可作为临时替代
《如懿传》:一句台词道尽人生无常
《富贵逼人太甚》原声带:听《楼台外》一秒入戏,品《一念永恒》感受成长
和平精英巅峰赛:你的PEL梦开始的地方