位置: 编程技术 - 正文

浅谈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简单查询)

  • 小微企业所得税费用怎么算
  • 免交增值税怎么账务处理
  • 小型微利企业所得税计算公式2023
  • 资产减值损失纳税调增还是调减
  • 购入房产计入什么科目
  • 小规模的开专票怎么征税
  • 金税盘不用了之后要抄报税吗
  • 对外投资固定资产的账务处理
  • 铁路大票抵扣几个点
  • 关停企业的生产线能否停止计提折旧?
  • 如何异地缴纳个人医保
  • 土地证是商业用地
  • 自产产品公益性捐赠可以免征增值税吗
  • 递延所得税资产和负债怎么理解
  • 零申报的企业年末的利润表可以为零吗?
  • 应交税费已交税金借方有余额
  • 城镇土地使用税征收标准及计算方法
  • 预收账款可以计入
  • 支付店面租金为什么是管理费用
  • element plus 虚拟化表格
  • 事业单位固定资产计提折旧
  • wordpress portfolio
  • php入门基础教程
  • macOS Big Sur 11.2 RC 3(版本号20D64)预览版正式发布(附更新内容)
  • 摊销租赁费属于什么费用
  • 生产成本的主要分析方法
  • php超强防cc页面
  • PHP:imagecreatefromxbm()的用法_GD库图像处理函数
  • 回迁房办理房产证契税怎么交
  • php激活码永久
  • framework4.0怎么打开
  • 建筑 营改增
  • 长期股权投资投资收益计算
  • 森佩塑胶
  • php对接mysql
  • win11电源高性能模式代码
  • 基于vue的ui
  • nodejs官方文档
  • bootz命令
  • 财政贴息会计处理怎么理解
  • 对供应商的罚款通知怎么写
  • mongodb添加用户并授权
  • 个税全员全额扣除怎么算
  • 定期定额征收税款
  • 销售收入与营业费用的配比不合理
  • 出口货物关税完税价格包括哪些
  • 打印银行电子回单有断号
  • 一般纳税人适用3%税率情况
  • 外贸会计的工作内容
  • 差旅费会计科目怎么做
  • 无偿划转资产需要挂其他应收款吗
  • 暂估成本以后也没有票回来了
  • 支付设备款怎么做账
  • 先进先出法实际成本跟成本不一样吗
  • 赠送的产品价格为0怎么做账
  • 投资收益下期间怎么结转
  • SQLserver中cube:多维数据集实例详解
  • mysql中的rand函数
  • 在sql server中触发器不具有什么类型
  • win8的应用商店
  • gdiwindow是什么
  • ubuntu设置默认编辑器
  • window8任务管理器
  • linux怎么挂载文件夹
  • qt opengl obj
  • pygame如何加载图片
  • IEnumerator/ IEnumerable/ yield return/ StartCoroutine 详解
  • sdk有问题
  • python mem
  • python写一个复制文件的程序
  • Android EventBus实战
  • js 工作流
  • 浙江职称评审网址官网
  • 城管大队长级别高吗
  • 威科先行法律信息库价格
  • 煤炭资源税税率表
  • 集体土地征收应该有哪些文件
  • 快手怎样代卖
  • 陕西电子发票开票流程?
  • 问一下医院
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设