一种多表关联的数据查询方法、系统及设备技术方案

技术编号:38202818 阅读:12 留言:0更新日期:2023-07-21 16:46
本发明专利技术公开了一种多表关联的数据查询方法、系统及设备,涉及数据查询领域。该方法包括:构建索引字段,并将所述索引字段存储到多个表中;通过相同的所述索引字段按照顺序筛选多个表中的数据;根据多个表的主外键对筛选到的数据进行过滤。本发明专利技术能够提高多张表在进行关联查询时的查询效率。关联查询时的查询效率。关联查询时的查询效率。

【技术实现步骤摘要】
一种多表关联的数据查询方法、系统及设备


[0001]本专利技术涉及数据查询
,特别涉及一种多表关联的数据查询方法、系统及设备。

技术介绍

[0002]当前,互联网已经成为人们生活中不可或缺的组成部分,随着用户量与使用频率的迅猛增长,业务、用户行为等数据的量级也在不断增长,从而为大数据统计带来了极大挑战。为了更好支撑业务发展,对于高性能大数据实时统计与分析的需求十分强烈。
[0003]在大数据领域,通常通过提升服务器配置,CDN加速,数据预存储,新旧数据切片,扩充索引字段等方式来提升查询效率,但是其以存在成本高、用户体验差等问题。

技术实现思路

[0004]本专利技术的目的是提供一种多表关联的数据查询方法、系统及设备,在不影响用户体验且无额外成本的情况下,实现多表关联查询场景的效率提升。
[0005]为实现上述目的,本专利技术提供了如下方案:
[0006]一种多表关联的数据查询方法,包括:
[0007]构建索引字段,并将所述索引字段存储到多个表中;
[0008]通过相同的所述索引字段按照顺序筛选多个表中的数据;
[0009]根据多个表的主外键对筛选到的数据进行过滤。
[0010]可选地,构建索引字段,并将所述索引字段存储到多个表中,具体包括:
[0011]确定要查询的多个表;多个表是有先后顺序的;
[0012]获取第一个表中的索引字段;
[0013]根据第一个表与其余表的索引关系,将所述索引字段存储到其余表中。
>[0014]可选地,多个表是由具体业务确定。
[0015]本专利技术还提供了一种多表关联的数据查询系统,包括:
[0016]构建模块,用于构建索引字段,并将所述索引字段存储到多个表中;
[0017]筛选模块,用于通过相同的所述索引字段按照顺序筛选多个表中的数据;
[0018]过滤模块,用于根据多个表的主外键对筛选到的数据进行过滤。
[0019]可选地,所述构建模块具体包括:
[0020]确定单元,用于确定要查询的多个表;多个表是有先后顺序的;
[0021]获取单元,用于获取第一个表中的索引字段;
[0022]存储单元,用于根据第一个表与其余表的索引关系,将所述索引字段存储到其余表中。
[0023]可选地,多个表是由具体业务确定。
[0024]本专利技术还提供了一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行上述的多表关联的数据查
询方法。
[0025]本专利技术还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述的多表关联的数据查询方法。
[0026]根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:
[0027]本专利技术在进行关联查询时,用索引字段在第二张或者第N张表中先进行检索,得出小数据量的初步结果数据,再与第一张表的初步结果数据进行关联过滤,得出最终的结果数据。这样避免了直接用第二张表的全量数据与第一张表的初步结果进行关联过滤,提高了多张表在进行关联查询时的查询效率。
附图说明
[0028]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0029]图1为本专利技术实施例一提供的多表关联的数据查询方法的流程图;
[0030]图2为采用本专利技术提供的多表关联的数据查询方法进行数据查询的示意图。
具体实施方式
[0031]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0032]本专利技术的目的是提供一种多表关联的数据查询方法、系统及设备,提高多张表在进行关联查询时的查询效率。
[0033]为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。
[0034]实施例一
[0035]本专利技术实施例一提供了一种多表关联的数据查询方法。如图1所示,该方法包括以下步骤:
[0036]S1:构建索引字段,并将所述索引字段存储到多个表中。
[0037]步骤S1具体包括:
[0038](1)确定要查询的多张表N,(N大于等于2)。
[0039](2)获取表1中的索引字段,其中表1是由具体业务决定。索引字段不一定是唯一的,可以有多个。
[0040]表1和表2是由具体业务决定的,例如表1:学生基本信息表,表2:学生成绩表。例如要查询张三的成绩,一般是先在基本信息表找到对应的人,然后用对应人的ID到成绩表找其成绩值。所以表1和表2是有先后顺序的。
[0041](3)把表1中的索引字段同时存储到其余表2~n中。
[0042]根据表1与其余表的索引关系将索引字段存储进其余表。
[0043]在往表1中的索引字段(如索引字段A)写入数据时,同时把其余表2~n中对应的索引字段A也写入相同的值。字段的类型相同。这样相当于字段A在表1和表n中均存在。且字段A既是表1的数据库索引,同时也是表n的数据库索引。
[0044]S2:通过相同的所述索引字段按照顺序筛选多个表中的数据。
[0045]如图2所示,查询数据时,通过索引字段A这个条件在表1内过滤数据,得到初步结果数据1。字段A只是1个查询条件,如果有多个条件,都是同逻辑处理,本专利技术只是拿字段A作为例子。同样的,用索引字段A在表n内过滤数据,得到初步结果数据n。
[0046]S3:根据多个表的主外键对筛选到的数据进行过滤。
[0047]用表1的结果数据和表n的结果数据进行过滤得出最终需要的结果数据。
[0048]过滤过程如下:
[0049]拿到结果数据后接下来还需要通过表1和表2的主外键(或者2表映射关系字段)进行过滤例如,在表1中查询出“张三”得到第一份初步结果数据,同时在表2也查询出“张三”得到第二份初步结果数据,但是这个是姓名条件,名字叫“张三”的人很多,所以还需要用表1和表2的主外键过滤出一一对应的结果数据。下面是例子演示:
[0050]表1:(基本信息表)
[0051]ID身份证号姓名性别1362229198011116666张三男2362229198011117777李四女3362229198011118888张三女4~~~~~~~~~
[0052]表2:学生成绩表
[0053][0054][0055]上表2中的“姓名”字段就是上文描述A字段。如果表2中没有本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种多表关联的数据查询方法,其特征在于,包括:构建索引字段,并将所述索引字段存储到多个表中;通过相同的所述索引字段按照顺序筛选多个表中的数据;根据多个表的主外键对筛选到的数据进行过滤。2.根据权利要求1所述的多表关联的数据查询方法,其特征在于,构建索引字段,并将所述索引字段存储到多个表中,具体包括:确定要查询的多个表;多个表是有先后顺序的;获取第一个表中的索引字段;根据第一个表与其余表的索引关系,将所述索引字段存储到其余表中。3.根据权利要求1所述的多表关联的数据查询方法,其特征在于,多个表是由具体业务确定。4.一种多表关联的数据查询系统,其特征在于,包括:构建模块,用于构建索引字段,并将所述索引字段存储到多个表中;筛选模块,用于通过相同的所述索引字段按照顺序筛选多个表中的数据;过滤模块,用于根据多个表的主外键对筛选到的数据进...

【专利技术属性】
技术研发人员:胡斌骆海东许诚
申请(专利权)人:上海聚水潭网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1