位置: 编程技术 - 正文

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拆分函数)

  • 税务师考试各科老师推荐
  • 税金及附加借贷科目
  • 酒类产品的税率
  • 汇算清缴期间发生的计入当期损益吗
  • 个体户需要做利润分析吗
  • 进口环节缴纳关税计入
  • 百旺税控盘汇总表怎么看
  • 劳务派遣员工工伤用工单位承担责任吗
  • 银行提备用金怎么提
  • 2019小微企业10万免税需要如何办理
  • 独资合伙企业的所有者用于承担企业财务风险的财产是
  • 抵押贷款买房子合适还是商业贷款合适
  • 收到对方的银行汇票算什么凭证
  • 税后利润再投资
  • 物业管理负责电路吗
  • 融资性售后回租按什么缴纳增值税
  • 小微企业所得税税率2.5% 10% 25%
  • 包工包料的工程怎么做账
  • 污水处理增值税征收品目
  • 资产负债表年初数和期末数代表什么
  • 高新技术企业取消认定
  • 收到生育津贴的短信是真的吗
  • 以前年度损益调整结转到本年利润吗
  • 原材料暂估分录
  • 车辆理赔过程中,赔付款给谁
  • 冲减坏账准备和计提坏账准备
  • 收到厂家赠送的产品
  • 外贸企业出口退税计算
  • 广告公司发生的广告代工费账务怎么处理
  • 进程lsass.exe
  • 出售固定资产减按2%会计处理1%怎么处理
  • PHP:mcrypt_cfb()的用法_Mcrypt函数
  • 土地增值税属于财产税吗
  • php 截断
  • php curl命令详解
  • ptech模型
  • html写php
  • JS初识
  • 帝国cms使用手册
  • 购入苗木进项税的会计分录
  • 报销还款人民币是什么意思
  • 资本公积的项目有哪些
  • 学电脑哪个网站比较好
  • mysql的联合查询
  • 专项附加可以随便填吗
  • 没有发票的房租怎么入账
  • 退付现金什么意思
  • 回忆一下会计核算程序有哪几种?
  • 企业收到加盟费怎么开发票
  • 一达通退税需要具备的条件?
  • 不提供银行流水的理由
  • 公司车辆过户给个人有年限么
  • 进项税额抵扣是按税率分开抵扣吗
  • 用Autoconf检测MySQL软件包的教程
  • mysql5.7.31安装配置教程
  • sqlserver批处理
  • 微软安装环境
  • win8装不了itunes
  • win7系统安装谷歌浏览器
  • giantantispywaremain.exe是什么进程 有什么作用 giantantispywaremain进程查询
  • win8怎么查看隐藏文件
  • android游戏开发论文
  • Android游戏开发pdf
  • jquery图片轮播无缝连接
  • 安卓下的分件分享怎么弄
  • 安卓性能测试主要测试的是
  • shell脚本用法
  • vue缓存数据
  • python爬虫过程
  • 友盟的功能
  • javascript的用法
  • ubuntu系统的手机
  • jquery插件使用
  • 上海国家税务局电话
  • 福建省个人所得税税率表查询
  • 税控盘离线开票金额为零怎么办
  • 增值税发票不够用怎么增票
  • 黔西南州医疗保险报销比例
  • 呼市地方税务局电话
  • 关于切实加强建筑施工领域安全防范工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设