sqlserver表连接方式_sql server数据表的关联

sqlserver表连接方式_sql server数据表的关联数据库操作中,我们需要的结果可能在两张表甚至多张表中,这时候就需要表连接操作,多表查询中的各个表之间的字段会存在连接,比如主外键关联,可以使用主外键来关联每张表。表连接方式有以下几种: JOIN: 如

数据库操作中,我们需要的结果可能在两张表甚至多张表中,这时候就需要表连接操作,多表查询中的各个表之间的字段会存在连接,比如主外键关联,可以使用主外键来关联每张表。表连接方式有以下几种:

  1. JOIN: 如果表中有至少一个匹配,则返回行
  2. LEFT JOIN(左连接): 即使右表中没有匹配,也从左表返回所有的行
  3. RIGHT JOIN(右连接): 即使左表中没有匹配,也从右表返回所有的行
  4. FULL JOIN(全连接): 只要其中一个表中存在匹配,就返回行

下面用两个表演示下上面4种连接方式,两表数据为:

sqlserver表连接方式_sql server数据表的关联

 

 1. JOIN连接:如果表中有至少一个匹配,则返回行

执行SQL语句:

	  SELECT 
	    stu.ID,
	    stu.StudentID,
	    stu.StudentName,
	    sco.ID,
	    sco.Score,
	    sco.StudentID      
	  FROM [BlogDemo].[dbo].[Student] stu Join [BlogDemo].[dbo].[Score] sco On sco.StudentID=stu.StudentID 

代码100分

结果如下,查询结果集只返回两表匹配StudentID字段相同行。

sqlserver表连接方式_sql server数据表的关联

 

 

2.LEFT JOIN(左连接): 即使右表中没有匹配,也从左表返回所有的行
执行SQL语句:

代码100分  SELECT 
	stu.ID,
	stu.StudentID,
	stu.StudentName,
	sco.ID,
	sco.Score,
	sco.StudentID      
  FROM [BlogDemo].[dbo].[Student] stu Left Join [BlogDemo].[dbo].[Score] sco On sco.StudentID=stu.StudentID 

结果如下,查询结果集只返回右表所有行,左表只返回与右表匹配行。
在这里插入图片描述

 

3. RIGHT JOIN(右连接): 即使左表中没有匹配,也从右表返回所有的行
执行SQL语句:

  SELECT 
     stu.ID,
     stu.StudentID,
     stu.StudentName,
     sco.ID,
     sco.Score,
     sco.StudentID      
  FROM [BlogDemo].[dbo].[Student] stu Right Join [BlogDemo].[dbo].[Score] sco On sco.StudentID=stu.StudentID 

结果如下,查询结果集只返回左表所有行,右表只返回与左表匹配行。
在这里插入图片描述

 

4. FULL JOIN(全连接): 只要其中一个表中存在匹配,就返回行
执行SQL语句:

代码100分   SELECT 
	stu.ID,
	stu.StudentID,
	stu.StudentName,
	sco.ID,
	sco.Score,
	sco.StudentID      
  FROM [BlogDemo].[dbo].[Student] stu FULL Join [BlogDemo].[dbo].[Score] sco On sco.StudentID=stu.StudentID 

结果如下,查询结果集返回两表的所有行。
在这里插入图片描述

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10554.html

(0)
上一篇 2022-12-25
下一篇 2022-12-25

相关推荐

  • 使用wxPython的Python工程师

    使用wxPython的Python工程师
    欢迎来到wxPython的世界!wxPython是一个强大的Python GUI框架,它提供了丰富的组件和工具,使得Python开发人员可以快速地构建复杂的用户界面。不管您是初学者还是专业的Python工程师,wxPython都会是您构建应用程序和用户界面的最佳选择。

    2024-05-25
    64
  • Python数据导出到Excel

    Python数据导出到Excela href=”https://www.python100.com/a/sm.html”font color=”red”免责声明/font/a a href=”https://beian.miit.gov.cn/”苏ICP备2023018380号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-08-25
    25
  • 为什么说我国一定要自研5g手机芯片技术_5g技术和芯片有关吗

    为什么说我国一定要自研5g手机芯片技术_5g技术和芯片有关吗     最近偶然看到一篇这段时间小米销量下降的文章,想要和大家聊一聊为什么我国一定要自研5G手机芯片?首先大家要明白没有核心技术的手机厂商终究是走不远的,我国手机厂商们一定要大力投入到自研5G手机…

    2023-02-02
    156
  • MySQL实验 子查询优化双参数limit – G[亲测有效]

    MySQL实验 子查询优化双参数limit – G[亲测有效]MySQL实验 子查询优化双参数limit 没想到双参数limit还有优化的余地,为了亲眼见到,今天来亲自实验一下。 实验准备 使用MySQL官方的大数据库employees进行实验,导入该示例库见此

    2023-03-18
    145
  • Python引入模块的方法

    Python引入模块的方法Python是一种功能强大的编程语言,具有开放性和易于学习的特点。在Python中,模块是对代码的组织形式,这使得代码可以分解为可维护的组件。通过模块化,程序员可以更好地组织和重用现有的代码,从而保证代码的可维护性、可读性和可扩展性。在本文中,我们将介绍Python引入模块的方法,并探讨一些关键的概念和技术。

    2024-07-23
    39
  • Excel经典问题:提取字符串,一个案例涉及3种方法和10个函数「终于解决」

    Excel经典问题:提取字符串,一个案例涉及3种方法和10个函数「终于解决」堪称进阶Excel的集大成旗舰系列课《48天,Excel技能脱胎换骨》,试学之后才知道有多厉害……,点击下面卡片了解详情:有这样一个Excel经

    2023-03-01
    146
  • mysql大表更新_sql根据一个表更新另一个表

    mysql大表更新_sql根据一个表更新另一个表MySQL中给一张千万甚至更大量级的表添加字段一直是比较头疼的问题,遇到此情况通常该如果处理?本文通过常见的三种场景进行案例说明。 1、 环境准备 数据库版本: 5.7.25-28(Perc

    2023-03-14
    145
  • python中英文时间转换的简单介绍

    python中英文时间转换的简单介绍python编程用datetime方法进行时间转换,代码如下:

    2023-11-01
    128

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注