SQL Server笔记(四)

本文是SQL Server笔记的第四部分,主要介绍了SQL Server中的表连接类型,包括内连接、左连接、右连接、全外连接和交叉连接。重点讲解了内连接、左连接和右连接的使用场景和示例,并提醒了交叉连接可能导致的笛卡尔积问题。

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

SQL Server笔记(四)

文献种类:专题技术文献;
开发工具与关键技术: VS、JS
作者:方建恒 ;年级:20级 ;撰写时间: 2022 年 4 月 18日

今天我继续给大家分享一下我总结的一些SQL Server的笔记,
接下来我们来了解一下SQL Server中的表连接,
SQL Server中的表链接包含内连接,左连接,右连接,全外连接和交叉连接,
其中全外连接是SQL Server独有的。
下面我们主要来了解一下常用的几个表连接:

  1. 内连接:是SQL Server中最常用的表连接方式之一。
    它用于查询来自两个或多个相关表的数据。以下为内连接的实例:
    首先在 from 子句中指定主表,其次在inner join子句和连接谓词中指定第二个表。
    只有连接谓词计算为 true的行才会包含在结果集中。代码如下图所示:
    在这里插入图片描述

  2. 左连接:用于查询来自多个表的数据。
    它会返回左表中的所有行和右表中的匹配行。当右表中没有匹配的行则返回null。
    以下实例中left join子句返回左表中的所有行以及右表中匹配的行或null值。
    代码如下图所示:
    在这里插入图片描述

  3. 右连接:用于查询来自多个表的数据。它与左连接差不多。
    只是它返回的是右表中的所有行和左表中的匹配行。当左表中没有匹配的行则返回null。
    以下实例中right join子句返回右表中的所有行以及左表中匹配的行或null值。
    代码如下图所示:
    在这里插入图片描述

  4. 自连接:用于将表连接到自身(同一个表)。
    它主要用于查询分层数据或比较同一个表中的行。自联接使用内连接或左连接子句。
    由于使用自联接的查询引用同一个表,因此表别名用于为查询中的表分配不同的名称。
    注意:如果在不使用表别名的情况下在查询中多次引用同一个表,则会出现错误。
    以下实例为查询“c001”课程比“c002”课程成绩高的所有学生的学号,代码如下图所示:
    在这里插入图片描述

  5. 交叉连接:cross join用于连接两个或多个不相关的表。
    它会将第一个表中的每一行与第二个表中的每一行连接起来。
    换句话说,交叉连接返回的是两个表中行的笛卡尔积。
    与内连接或左连接不同,交叉连接不会在连接的表之间建立关系。
    假设第一个表有 n 行,第二个表有 m 行,则交叉连接 将产生 n x m 行。
    交叉连接在进行查询时一定要注意避免出现笛卡尔值,否则的话会将数据库卡死。
    以下为实例,(表一有11行,表二有10行):
    在这里插入图片描述

以上就是今天分享的部分我的SQL Server的笔记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值