数据库四种JOIN联合查询类型详解,秒懂数据库查询
创作时间:
作者:
@小白创作中心
数据库四种JOIN联合查询类型详解,秒懂数据库查询
引用
CSDN
1.
https://m.blog.csdn.net/wkj001/article/details/144900699
数据库四种JOIN联合查询类型详解,秒懂数据库查询
1. 内连接(Inner Join)
内连接返回两个表中都有匹配关系的数据。例如,在用户表和订单表中,只有那些在两张表中都存在的user_id才会出现在查询结果中。比如,user_id为123和124的记录会被返回,而user_id为125的记录因为在订单表中没有匹配到对应的order_id,所以不会出现在结果中。内连接的语法是:
SELECT * FROM user_table a INNER JOIN order_table b ON a.user_id = b.user_id;
2. 左连接(Left Join)
左连接会返回左表中的所有记录,即使在右表中没有匹配到对应的值。比如在用户表和订单表的连接中,即便用户id为125在订单表中没有对应的记录,它仍然会被包含在结果中,订单id的值则显示为null。左连接的语法是:
SELECT * FROM user_table a LEFT JOIN order_table b ON a.user_id = b.user_id;
这种类型的JOIN适用于需要保留左表所有数据,同时查询出右表可能存在的匹配记录的场景。
3. 右连接(Right Join)
右连接与左连接相反,会返回右表中的所有记录,即便左表中没有匹配的值。在图中,user_id为125虽然在用户表中没有记录,但因为它在订单表中存在,依旧会被显示,用户的名称为null。其语法为:
SELECT * FROM user_table a RIGHT JOIN order_table b ON a.user_id = b.user_id;
4. 全外连接(Full Outer Join)
全外连接会返回两个表中所有的记录,不论是否有匹配的值。如果某个表中有对应的数据,但在另一个表中没有匹配到,该字段将显示为null。全外连接的语法为:
SELECT * FROM user_table a FULL OUTER JOIN order_table b ON a.user_id = b.user_id;
这种类型的JOIN适用于你想要查看所有可能组合的情况,包括不匹配的记录。
关键是下面的图片,更直观,有点数学 子集,交集,全集的概念
热门推荐
家长如何有效引导孩子远离网络游戏沉迷?
中国特种纸行业深度分析:产业链结构、发展历程及未来趋势
无线充电:革新科技浪潮下的无线革命与未来展望
涂料选择指南:环保与性能并重
庄达菲:从京圈公主到专业演员
轿车VS SUV:首车选谁?实用大PK
我国体育彩票行业分析:销售规模大幅上升 即开型备受青睐 市场格局则较集中
成为汉服模特只需要长得好看?行业现状与未来展望
MUST研究:向世界证明麝香保心丸在心血管疾病治疗中的重要作用
太阳系:八大行星的特征与探索
iOS 17.5.1紧急更新!修复关键漏洞,你需要知道的4个不同!
空压机保养完整教学:高效维护秘诀,延长使用寿命数
含谷胱甘肽的食物
装修省钱攻略:如何将25万预算压缩至18万
买扫地机器人线下比线上便宜800元!先涨价再降价?商场回应:售价不会涨
21天法则:一个好习惯的培养计划
中日俄离婚率对比断崖,日本 33%,俄罗斯 73%,中国呢?
赛马获胜的关键:保持最大速度
硬件测试工程师:未来科技发展的关键角色
福特蒙迪欧油耗深度解析:省油王者还是"油老虎"?
荒野战役的胜利者是谁?
鹦鹉应激反应处理指南:从识别到预防的全方位应对方案
以科技与文化的交响,奏响国漫工业的世界强音
别再乱挖耳屎了!不当清理耳垢恐加重耳鸣
从“AI秘书”到“情感搭子”,AI智能体将如何重塑人机关系?
公摊面积多少属于正常范围
钢丸尺寸综合指南
口罩怎么选?一文读懂各类场景下的选购指南
翡翠冰丝与裂纹:从形成到鉴赏的全面解析
我们分析了22821条评价,找到了研究生的理想导师