ANSI连接查询

本文深入解析SQL中的连接操作,涵盖内连接、外连接(左、右、全)、自连接及交叉连接等,详细阐述每种连接的特点与应用场景,是数据库操作不可或缺的指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.内连接
FEOM 表名1 [INNER]join 表名2 ON  连接表达式
从表1和表2的笛卡尔积中,选中符合连接条件的数据行;如果数据行无法满足连接条件,
则将其丢弃。内连接消除了于另一搞表中不匹配的数据行。
2.外连接
外连接返回FROM子句中指定的至少一个表(或视图)中的所有行(不包含ON之后的连接条件)
,只要这些行符合任何人WHERE选择后者HAVING限定条件
 外连接又分为左外连接。右外连接和全外连接
 1.左外连接对连接中左边的表不加限制;右外连接怼连接中的右边的表不加限制;全外连接对
 两个表都不加限制,两个表中所有行都会包括在结果集中
 
 -------------------------------------------------------------
 1. 左外连接
 FEOM 表名1 LEFT[OUTER]JOIN 表名2  ON 连接表达式
 连接结果保留表1没形成连接的行,表2相应的各列为NULL值
 (选没选课)
 -------------------------------------------------------------
 2.右外连接
 FROM 表名1 RIGHT[OUTER] JOIN 表名2 ON 连接表达式
 连接结果保留表2没形成连接的行,表1相应的列外NULL值
 -------------------------------------------------------------
 3.全外连接
 FROM 表名1 FULL [outer] JOIN  表名2    ON  连接表达式
 连接结果保留表1没形成的元组,表2相应的列为NULL值:
 连接结果也保留表2没形成连接的元组,表1相应的列为NULL值
 ----------------------------------------------------------------

3.自连接(让我想起了自交。嘿嘿)
FROM 表名1 别名1 JOIN 表名1 别名2 ON 连接表达式
表可以通过自连接实现自身连接运算。自连接可以看作是“一张表的两个副本之间进行的连接””
在自然连接中,必须为表指定两个不同的别名,使之在逻辑上成为两张表

4.交叉连接 
FROM 表名1 CROSS JOIN 表名2
或FROM  表名1,表名2
两个表进行笛卡尔积计算,结果集的行数等于表1的行数乘以表2的行数
(通常与WHERE子句使用)
5.多表连接
FROM 表名1 JOIN   ON 连接表达式
JOIN  表名3  ON  连接表达式[,......., n]
(最多可以连接64个表,通常为8-10个)

推荐小说网http://www.huluxia.fun/

推荐影视站http://v.huluxia.fun/

个人博客地址http://huluxia.fun/

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值