数据库中表连接方式有哪些

技术数据库中表连接方式有哪些这篇文章将为大家详细讲解有关数据库中表连接方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 1 nested loop

这篇文章将为大家详细讲解有关数据库中表连接方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1 nested loop join

循环嵌套连接:行源一的每一条记录,依次去匹配行源2的每条记录,将符合连接条件的记录放在结果集中,直到行源一的所有记录都完成这个操作。循环嵌套连接是最基本也是最古老的表连接方式。

数据库中表连接方式有哪些

2排序合并连接

排序合并连接:行源一和行源2的数据分别排序,然后将两个排序的源表合并,符合连接条件的记录放到结果集中。由于排序需要内存空间,排序合并连接对内存有比较大的消耗,如果内存空间(8i为sort_area_size,9i及以上使用PGA)不足,则会使用临时表空间,这样会降低排序合并连接的效率。排序合并连接是最古老的表连接方式之一。

附上雄猫哥哥的解释:

你问的

汤姆,

"排序合并"和"散列"连接之间的区别是什么。他们不都做一个吗

全扫描连接表上的每一个并连接它们?

我知道排序合并用于"所有行"的情况,嵌套循环用于

第一行的提示。《加入》怎么样?什么时候用?

如果你能举几个例子解释一下,我将不胜感激。

先谢了。

我们说.

嗯,甲和乙的某种合并有点像这样:

读取A并按临时A的连接键排序

读取B并按临时B的连接键排序

从温度_a读取记录

从温度_b读取记录

当温度_a和温度_b不为电渗流时

if (temp_a.key=temp_b.key)然后输出连接记录

elsif (temp_a.key=temp_b.key)从温度_a读取记录

elsif (temp_a.key=temp_b.key)从温度_b)读取记录

结束循环

(比这更复杂的是,上面的逻辑假设连接键是唯一的——我们真的

需要将温度_a中的每一个匹配连接到温度_b中的每一个匹配,但是您得到了图片)

散列连接在概念上类似于:

在创建温度_a的连接键上创建一个散列表

而不是在B上

阅读b中的记录

散列连接键,并通过散列键查找温度_a以进行匹配

记录

输出匹配项

结束循环

因此,散列连接有时会更有效(一个散列,而不是两个排序)

在大多数情况下,排序合并可以在任何时候使用散列连接。如果你没看到

散列连接正在进行,也许您已经关闭了散列连接启用.

数据库中表连接方式有哪些

3散列连接

哈希连接:将行源一计算成一张基于连接键的混杂表,行源2的每条记录依次扫描这张混杂表,找到匹配的记录放到结果集。计算混杂表需要内存空间,散列连接同样对于内存有比较大的消耗,如果内存空间(8i为hash_area_size,9i及以上使用PGA)不足,则会使用临时表空间,这样会降低哈希连接的效率。

数据库中表连接方式有哪些

关于"数据库中表连接方式有哪些"这篇文章就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/106999.html

(0)

相关推荐

  • 两个虫子,两个虫子的头身子是弹簧打一成语

    技术两个虫子,两个虫子的头身子是弹簧打一成语能屈能伸解题过程:左边鸟的弹簧缩回去就是能屈,右边鸟的弹簧拉起来就是能伸,答案就是能屈能伸两个虫子。成语拼音:néng qū néng shēn
    成语解释:屈:弯曲;伸:伸直。

    生活 2021年10月20日
  • java swing 基础教程2(java swing界面添加小功能)

    技术如何浅析Swing项目的开发如何浅析Swing项目的开发,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。由于工作最近接手一个Swing项目,开发周期为一年

    攻略 2021年12月18日
  • SpringBoot中的Bean初始化方法是什么

    技术SpringBoot中的Bean初始化方法是什么本篇内容介绍了“SpringBoot中的Bean初始化方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这

    攻略 2021年11月29日
  • Angular和SAP C4C的事件处理队列分析

    技术Angular和SAP C4C的事件处理队列分析本篇内容主要讲解“Angular和SAP C4C的事件处理队列分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Angul

    攻略 2021年11月10日
  • Java的Executor线程池框架怎么使用

    技术Java的Executor线程池框架怎么使用本篇内容介绍了“Java的Executor线程池框架怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧

    攻略 2021年11月30日
  • C#如何实现前台与后台方法互调

    技术C#如何实现前台与后台方法互调本篇文章为大家展示了C#如何实现前台与后台方法互调,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。前台与后台方法互调是很多读者关心的功能。下面提供

    攻略 2021年11月24日