位置: 编程技术 - 正文

浅谈SQL Server交叉联接 内部联接(sql server join)

编辑:rootadmin

推荐整理分享浅谈SQL Server交叉联接 内部联接(sql server join),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql. server,sql server join,sqlserver交集,sql交互,sql,server,sql,server,sql servers,sql servers,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

本节开始我们进入联接学习,关于连接这一块涉及的内容比较多,我们一步一步循序渐进学习,简短内容,深入的理解。

交叉联接(CROSS JOIN)

交叉连接是最简单的联接类型。交叉联接仅执行一个逻辑查询处理阶段-笛卡尔乘积。例如对两个输入表进行操作,联接并生成两个表的笛卡尔乘积,也就是说,将一个表的每一行与另一个表的所有行进行匹配。所以,如果一个表有m行,另一个表有n行,得到的结果中则会有m*n行。我们就拿SQL Server 教程中的例子说下

在Sales.Customers表中有行数据,HR.Employees表中有9行数据,则利用交叉联接数据则有(*9)行数据,简略数据如下。

交叉联接我们可以用如下图表示

交叉联接最大的用途在于生成数字表以便我们用于其他目的,我们一起来看看。

插入条基础数据

创建数字表

利用交叉联接在数字表中插入万条数据

内部联接(INNER JOIN)

内部联接用法如下

内部联接返回表中更多数据

我们首先给出如下三个测试表

(1)等值条件查询

浅谈SQL Server交叉联接 内部联接(sql server join)

(2)非等值条件查询

上述我们同样可以利用交叉连接实现同样效果

(3)查询非重复行(NON-DISTINCT)

我们在创建第三个测试表时,插入的数据是5个2,而在第一个表中插入的数据分别是1、2、3,此时我们利用等值联接得到的结果到底是1个2,还是5个2呢?

我们得到的结果是5个2,为什么利用内部联接也就是说利用的等值条件不是返回1个2呢,其实我们可以总结如下:

结论:利用内部联接比实际表中返回更多数据的原因在于,内部联接返回的结果集是基于查询条件中的JOIN,若有多行满足条件则返回多条数据。

内部联接安全性

在两个表利用等值条件查询时,我们有两种写法。

ANSI SQL-写法

ANSI SQL-写法

虽然这两种写法都可以,都能满足需求,但是SQL Server 基础教程强烈建议使用ANSI SQL-写法,为什么呢,因为用ANSI SQL-写法时若出现错误,此时解析根本不会生成错误,而对于ANSI SQL-写法则会,下面我们一起来看下ANSI SQL-写法的问题

上面是我们利用正确的写法得到的正确的总数据行为条,下面我们看看有问题的写法

此时我们没有给出WHERE条件,而解析未出现错误,当然返回的结果集也就是错误的。当我们利用ANSI SQL-写法时,我们同样也未给出比较条件,如下

此时会出现解析错误,也就是无法再继续查询,自然也就得不到错误的结果。

结论:强烈推荐使用ANSI SQL-写法,这样一来使得数据不会出现不一致性,同时可读性和可维护性比ANSI SQL-写法强。

总结

本节我们讲了交叉联接和内部联接,同时也给出了使用需要注意的地方,本节到此结束,我们下节再讲讲自联接和外部联接。简短的内容,深入的理解,我们下节再会,good night。

标签: sql server join

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

上一篇:SQL设置SQL Server最大连接数及查询语句(SQL设置外键)

下一篇:SQL Server简单查询示例汇总(sql server简单查询)

  • 利润总额亏损还有没有所得税
  • 企业间分红是否需要缴纳企业所得税
  • 税收的作用是什么
  • 以前年度多计管账怎么做
  • 原始凭证如何粘贴到记账凭证后面
  • 小规模零申报增值税
  • 发票密码区超出可以用吗
  • 小规模缴纳增值税税控系统可以抵扣么
  • 农行公户怎么给公户转账
  • 申报同步更正
  • 2019年定额手撕发票2023年还能用吗
  • 补发工资是否计入工资
  • 公司收到的其他发票
  • 收到厂家的销售返利 税收
  • 小规模季度销售超过30万怎么纳税
  • 房地产开发企业会计科目
  • 适用增值税差额征税的小规模纳税人
  • 新企业所得税法规定的企业包括
  • 其他应付款借方余额表示什么
  • 湖北个体户网上申报
  • 办公室出租中介公司
  • 应收款计提
  • 个人如何开专票
  • 结转电费成本会计分录
  • 购买员工宿舍床上用品怎么入账
  • 期间费用率的意义
  • 已经抵扣增值税专用发票对方要换票怎么办
  • 支付临时工工资计入什么科目
  • php导入
  • urlerror什么意思
  • 用彩泥可以做什么食物?
  • oauth认证流程
  • 房屋权属转移是什么意思
  • 内账怎么处理增值税
  • codewriter怎么运行
  • 库存股会计处理 会计视野
  • 企业办理税务
  • php curl_exec
  • php操作mysql数据库的扩展有哪三个
  • php批量上传图片到服务器
  • ai数字绘画设计培训
  • 区块链网站模板
  • php支付接口开发
  • 未开票金额怎么填写
  • 机动车发票哪几联 做帐
  • 固定资产包括无形资产吗?
  • java一维数组从小到大排序
  • 变更法人代表是重大事项吗
  • 企业影响工程成本的原因
  • microsoft SQL server 2014可以删吗
  • 收缩数据库日志文件对数据有影响吗
  • 个体工商户免费开票额度
  • 更改Mysql root用户密码
  • 库存现金挂账多久
  • Transactional replication(事务复制)详解之如何跳过一个事务
  • 当月销售次月开票怎么做账
  • 固定资产出售如何开票
  • 购买东西进项税额怎么算
  • 银行交党费属于什么业务
  • 外购白酒继续生产白酒
  • 从增值税抵扣进项怎么算
  • 劳务公司开出发票没有收到钱,怎么做成本
  • 地税报表如何填写
  • 企业采用公允价值进行会计核算,所体现的会计质量要求
  • window10系统邮件设置在哪里
  • macbook macos
  • windows xp的安装
  • mac重装macos
  • win8关机键怎么添加到开始菜单
  • mac电池不能被识别吗
  • 电脑开机后出现win7画面后一直黑屏
  • linux如何关闭ipv6防火墙
  • linux防火墙的主要内容
  • cocos2d教程
  • 微信小程序实现微信支付
  • js代码不生效
  • 遍历字符串python
  • javascript怎么学
  • 耕地占用税是土地增值税开发成本吗
  • 税务代收是什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设