位置: 编程技术 - 正文

SQL Server中的连接查询详解(sql server连接方式)

编辑:rootadmin

推荐整理分享SQL Server中的连接查询详解(sql server连接方式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql server连接数,sql server连接数,sql server连接步骤,sqlserver数据库连接语句,sqlserver数据库连接语句,sql server连接数,sql server join连接,sql server 内连接,内容如对您有帮助,希望把文章链接给更多的朋友!

在查询多个表时,我们经常会用“连接查询”。连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志。

什么是连接查询呢?

概念:根据两个表或多个表的列之间的关系,从这些表中查询数据。

目的:实现多个表查询操作。

知道了连接查询的概念之后,什么时候用连接查询呢?

一般是用作关联两张或两张以上的数据表时用的。看起来有点抽象,我们举个例子,做两张表:学生表(T_student)和班级表(T_class)。

T_student

T_class

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1dfb.png" alt="查看图片" />

连接标准语法格式:

SQL-标准所定义的FROM子句的连接语法格式为:

其中join_table指出参与连接操作的表名,连接可以对同一个表操作,也可以对多表操作,对同一个表操作的连接又称做自连接。join_type 指出连接类型。join_condition指连接条件。

连接类型:

连接分为三种:内连接、外连接、交叉连接。

内连接(INNER JOIN)

使用比较运算符(包括=、>、<、<>、>=、<=、!>和!<)进行表间的比较操作,查询与连接条件相匹配的数据。根据比较运算符不同,内连接分为等值连接、自然连接和不等连接三种。

1、等值连接

概念:在连接条件中使用等于号(=)运算符,其查询结果中列出被连接表中的所有列,包括其中的重复列。

等于

结果是:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1dfbce.png" alt="查看图片" />

2、不等连接

概念:在连接条件中使用除等于号之外运算符(>、<、<>、>=、<=、!>和!<)

结果是:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1df2ca.png" alt="查看图片" />

3、自然连接

概念:连接条件和等值连接相同,但是会删除连接表中的重复列。

SQL Server中的连接查询详解(sql server连接方式)

查询语句同等值连接基本相同:

与等值连接对比:结果是少一个一列classId:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1dfcea9.png" alt="查看图片" />

总结:内连接是只显示满足条件的!

外连接

外连接分为左连接(LEFT JOIN)或左外连接(LEFT OUTER JOIN)、右连接(RIGHT JOIN)或右外连接(RIGHT OUTER JOIN)、全连接(FULL JOIN)或全外连接(FULL OUTER JOIN)。我们就简单的叫:左连接、右连接和全连接。

1、左连接:

概念:返回左表中的所有行,如果左表中行在右表中没有匹配行,则结果中右表中的列返回空值。

  结果是:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1dfec.png" alt="查看图片" />

总结:左连接显示左表全部行,和右表与左表相同行。

2、右连接:

概念:恰与左连接相反,返回右表中的所有行,如果右表中行在左表中没有匹配行,则结果中左表中的列返回空值。 

结果是:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1df.png" alt="查看图片" />

 总结:右连接恰与左连接相反,显示右表全部行,和左表与右表相同行。

3、全连接:

  概念:返回左表和右表中的所有行。当某行在另一表中没有匹配行,则另一表中的列返回空值

  结果是:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1dfc.png" alt="查看图片" />

  总结:返回左表和右表中的所有行。

交叉连接(CROSS JOIN):也称迪卡尔积

概念:不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积(例如:T_student和T_class,返回4*4=条记录),如果带where,返回或显示的是匹配的行数。

1、不带where:

结果是:

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_a1df5d4b.png" alt="查看图片" />

总结:相当与笛卡尔积,左表和右表组合。

2、有where子句,往往会先生成两个表行数乘积的数据表,然后才根据where条件从中选择。

  (注:cross join后加条件只能用where,不能用on)

查询结果跟等值连接的查询结果是一样。最后附上:我做的练习,便于自己,复习:

连接查询非常简单,只需要在项目中多多实践,不断总结,希望本文对大家的学习有所帮助。

SQL字段拆分优化 今天看到一条用函数处理连接的SQL,是群里某位网友的,SQL语句如下:SELECTSO_Order.fdate,SO_Order.fsnFROMso_orderINNERJOINso_orderitemONCHARINDEX(so_Orderitem.fid,SO_Order.fid

恢复sql server 误删数据的解决办法 今天不小心把客户那边的数据库中删了一千多条数据,而且之前又没有备份,真的是很郁闷,后来在网上找到一工具,用起来挺方便,让我躲过一劫。

SQLSERVER SQL性能优化技巧 1.选择最有效率的表名顺序(只在基于规则的优化器中有效)SQLSERVER的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基

标签: sql server连接方式

本文链接地址:https://www.jiuchutong.com/biancheng/347393.html 转载请保留说明!

上一篇:SQL Server 2016 CTP2.3 的关键特性总结

下一篇:SQL字段拆分优化(sql拆分函数)

  • 个体工商户的免税政策
  • 销售原材料给供应商
  • 提取法定盈余公积是什么意思
  • 增值税专用发票可以开电子发票吗
  • 外汇结汇成人民币违法吗
  • 租金属于什么会计要素
  • 预售房款预缴增值税
  • 固定资产处置的增值税税率
  • 企业增加注册资本流程
  • 仪器检测费发票哪一类
  • 收到银行退回的银行汇票多余款
  • 年终奖金在年度内扣税吗
  • 税控系统维护费账务处理
  • 小规模纳税人需要汇算清缴吗
  • 发票专用章在哪里盖章
  • 已认证未抵扣发票冲红流程
  • 股权激励个人所得税计算器
  • 发票经手人和经办人的区别
  • 加计扣除10%进项税政策文件
  • 股权激励取消怎么处理?
  • 应税消费品用于连续生产应税消费品的
  • 公积金代扣时会扣多少
  • 虚拟股份分红
  • 当月凭证做完怎么结转?
  • mac上如何切换apple id
  • 为什么盈余公积补亏不会影响留存收益
  • avcodec是什么意思
  • 微信订阅项目
  • 公司比赛奖金计入什么科目
  • 应收账款可不可以作为质押合同的标的
  • 传媒改革
  • kb4539601安装失败
  • 做电脑配件的公司
  • php 调试工具
  • php采集系统
  • 资产负债表项目填列的依据是
  • 盈余公积提取和结转
  • 海关进口增值税计入什么科目
  • WGAN(Wasserstein GAN)看这一篇就够啦,WGAN论文解读
  • gpt3 plug
  • mobilenet模型
  • didstata命令
  • 当月已入账可是未入账
  • 营业外收入在现金流量表中填入哪列
  • java 访问者模式
  • 进口货物的报关成交方式
  • 监控200万和400万的区别
  • 主管盾和制单盾是是转账使用的U盾吗?
  • sql编程软件哪个好用
  • 红字更正法适用于更正什么样的错误
  • 库存商品期末余额怎么计算
  • 工程履约保证金退还申请书
  • 没有发票会怎样
  • 厨师的工资计入什么费用
  • 小规模纳税人营改增税率
  • 工程发票入账
  • 当月作废的采购发票已认证账务如何处理?
  • 电脑开票怎么操作流程
  • 管理会计在企业中的地位如何?为什么
  • 结转未交增值税会计处理
  • Fedora25踏上Wayland的路上讲解
  • 数据中心为什么要建在山洞里
  • win10系统怎么将桌面路径改为d盘
  • ubuntu系统中怎么安装mathematica13.1.0
  • mac电脑卡死按哪三个键
  • linux系统怎么关闭程序
  • unity设置帧数
  • 全面理解全面把握全面落实
  • fortune命令
  • Jquery通过ajax请求NodeJS返回json数据实例
  • javascript 作用
  • 什么叫开源库
  • python爬虫有道翻译
  • 如何打印纳税申报表
  • 土地增值税按什么价格
  • 一般纳税人提供公共交通运输服务免征增值税
  • 有关单位和个人应该怎么样
  • 杭州电子税务局怎么添加办税员
  • 税务实名认证如何操作
  • 小微企业所得税5%优惠政策
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设