CN114637752A - 一种连接查询语句处理方法、装置、设备及存储介质 - Google Patents

一种连接查询语句处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114637752A
CN114637752A CN202210319792.3A CN202210319792A CN114637752A CN 114637752 A CN114637752 A CN 114637752A CN 202210319792 A CN202210319792 A CN 202210319792A CN 114637752 A CN114637752 A CN 114637752A
Authority
CN
China
Prior art keywords
statement
query statement
item
connection query
view
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210319792.3A
Other languages
English (en)
Inventor
朱仲颖
刘志勇
韩朱忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Dameng Database Co Ltd
Original Assignee
Shanghai Dameng Database Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Dameng Database Co Ltd filed Critical Shanghai Dameng Database Co Ltd
Priority to CN202210319792.3A priority Critical patent/CN114637752A/zh
Publication of CN114637752A publication Critical patent/CN114637752A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种连接查询语句处理方法、装置、设备及存储介质。获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句;判断原始连接查询语句是否满足预设优化条件;若满足,则获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。本发明实施例的技术方案,大大降低了分组计算的数据量,极大地提升了整个连接查询语句的执行效率。

Description

一种连接查询语句处理方法、装置、设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种连接查询语句处理方法、装置、设备及存储介质。
背景技术
结构化查询语言(Structured Query Language,SQL语言),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
在结构化查询语言中,通常将连接分成四类:内链接、外连接、自然连接以及交叉连接,其中外连接包括左外连接和右外连接。在当前通用的数据库技术中,为了实现表和视图的连接查询,一般是先求出视图结果集,然后再和表数据做连接操作,最后得到查询结果。
然而,在某些情况下,例如视图是个含有分组计算的视图,视图查询的表数据很大且没有筛选条件,那么当对视图进行分组计算时,由于数据过多导致连接查询的效率低下。
发明内容
本发明提供了一种连接查询语句处理方法、装置、设备及存储介质,以解决表数据与视图的连接查询语句效率低下的问题。
第一方面,本发明实施例提供了一种连接查询语句处理方法,包括:
获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句;
判断原始连接查询语句是否满足预设优化条件;
若满足,则获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。
第二方面,本发明实施例提供了一种连接查询语句处理装置,包括:
连接查询语句获取模块,用于获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句;
连接查询语句判断模块,用于判断原始连接查询语句是否满足预设优化条件;
归并处理模块,用于在连接查询语句判断模块的判断结果为满足时,获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理;
连接查询语句确定模块,用于根据归并处理模块的处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。
第三方面,本发明实施例提供了一种电子设备,该电子设备包括:
至少一个处理器;
以及与至少一个处理器通信连接的存储器;
其中,存储器存储有可被至少一个处理器执行的计算机程序,该计算机程序被至少一个处理器执行,以使至少一个处理器能够执行上述第一方面的连接查询语句处理方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,计算机指令用于使处理器执行时实现上述第一方面的连接查询语句处理方法。
本发明实施例提供的连接查询语句处理方案,获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句;判断原始连接查询语句是否满足预设优化条件;若满足,则获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。通过采用上述技术方案,将满足预设优化条件的原始连接查询语句和其对应的视图定义语句,进行归并处理,并根据归并处理结果确定出优化后的目标连接查询语句,大大降低了分组计算的数据量,从而极大地提升了整个连接查询语句的执行效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种连接查询语句处理方法的流程图;
图2是根据本发明实施例二提供的一种连接查询语句处理方法的流程图;
图3是根据本发明实施例三提供的一种连接查询语句处理装置的结构示意图;
图4是本发明实施例四提供的一种电子设备的硬件结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。在本发明的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供了一种连接查询语句处理方法的流程图,本实施例可适用于对表数据与视图数据的连接查询语句进行优化的情况,该方法可以由连接查询语句处理装置来执行,该连接查询语句处理装置可以采用硬件和/或软件的形式实现,该连接查询语句处理装置可配置于电子设备中,该电子设备可以被配置为数据库管理系统,该电子设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。
如图1所示,该本发明实施例一提供的一种连接查询语句处理方法,具体包括如下步骤:
S101、获取原始连接查询语句。
其中,原始连接查询语句为针对数据表和视图的连接查询语句。
在本实施例中,连接查询语句可以是SQL中实现数据表和视图的连接查询功能的语句,例如,select a.c2,v.c1,v.c2 from a,v where a.c1=v.c1 order by a.c2,其释义为:查询表a和视图v以a.c1=v.c1为连接条件连接的结果集,并对a表中的c2列的数据排序。
S102、判断原始连接查询语句是否满足预设优化条件。
在本实施例中,在对原始连接查询语句进行优化前,需先判断该原始连接查询语句是否满足预设优化条件,并针对满足预设优化条件的原始连接查询语句进行优化处理,其中预设优化条件的具体内容可以包括,对原始连接查询语句中子句种类、子句的内容、每项的类型以及内容等的限定。
S103、若满足,则获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。
在本实施例中,当原始连接查询语句满足预设优化条件时,则可获取原始连接查询语句对应的视图定义语句,分析并归并处理该视图定义语句和原始连接查询语句。
示例性的,视图定义语句可以解释为创建视图的定义语句,其位置一般在原始连接查询语句之前,例如语句1,create view v as select b.c1,sum(b.c2)c2 from bwhere b.c1<10group by b.c1,其释义为:创建视图v;语句2,select a.c2,v.c1,v.c2from a,v where a.c1=v.c1 order by a.c2,其释义为:查询表a和视图v以a.c1=v.c1为连接条件连接的结果集,并对a表中的c2列的数据排序。其中,语句1即为语句2对应的视图v的定义语句。
在本实施例中,可以将原始连接查询语句经过归并处理的优化后得到的连接查询语句确定为目标连接查询语句,也可在优化后得到的连接查询语句基础上进行设定处理,进而得到最终用于执行的目标连接查询语句,设定处理的具体方式不做限定。其中,结果集可以解释为数据中查询结果返回的一种对象,其一般是个表。目标连接查询语句与初始连接查询语句相比,其优势可以解释为,目标连接查询语句被执行时,可以先对目标连接查询语句中对应的表数据进行连接,再根据目标连接查询语句对连接后的结果集进行相应的计算,进行表数据的连接操作后,得到的结果集中数据相比于连接前的表数据少,可以大大减少分组计算的数据量,避免将查询语句的主要执行时间消耗在视图定义语句中的分组计算过程中。
本发明实施例中,首先获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句,然后判断原始连接查询语句是否满足预设优化条件,若满足,则获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。在本发明的实施例的技术方案中,将满足预设优化条件的原始连接查询语句和其对应的视图定义语句,进行归并处理,并根据归并处理结果确定出优化后的目标连接查询语句,大大降低了分组计算的数据量,从而极大地提升了整个连接查询语句的执行效率。
在一些实施例中,在确定优化后的目标连接查询语句后,可以采用目标连接查询语句替换原始连接查询语句,对目标连接查询语句重新进行词法、语法、语义分析并执行。
实施例二
图2为本发明实施例二提供的一种连接查询语句处理方法的流程图,本发明实施例的技术方案在上述各可选技术方案的基础上进一步优化,更加合理地归并处理原始连接查询语句。
具体的,将视图定义语句和原始连接查询语句进行归并处理,包括:将原始连接查询语句的来源项链表中的视图替换为视图定义语句中的来源项链表,得到第一语句;将第一语句中视图列的查询项替换为视图定义语句中相应列对应的查询项,得到第二语句;在第二语句中包含筛选条件的情况下,将第二语句中的筛选条件替换为目标筛选条件,得到第三语句,其中,目标筛选条件为第二语句中的筛选条件和视图定义语句中的筛选条件的求与结果;对视图定义语句中的分组项进行预设处理,得到目标分组项,并将目标分组项添加至第三语句中,得到第四语句;根据第四语句确定归并处理结果。这样设置的好处在于,先进行表与表的连接操作再进行分组计算,大大降低了分组计算的数据量。
如图2所示,本发明实施例二提供的一种连接查询语句处理方法,具体包括如下步骤:
S201、获取原始连接查询语句。
其中,原始连接查询语句为针对数据表和视图的连接查询语句。
S202、判断原始连接查询语句是否满足预设优化条件,若是,则执行步骤203;否则,结束流程。
可选的,预设优化条件基于下述至少一项设定:原始连接查询语句的查询项链表中各项的类型、原始连接查询语句中是否存在第二预设伪列项或第一预设子句、原始连接查询语句中是否存在第二预设子句、原始连接查询语句中是否存在等值筛选条件或等值连接条件、原始连接查询语句的来源项链表中包含的视图的数量、以及原始连接查询语句的来源项链表中包含的视图的内容。
在本实施例中,预设的优化条件可以基于:原始连接查询语句的查询项链表中各项的类型、原始连接查询语句中是否存在第二预设伪列项或第一预设子句、原始连接查询语句中是否存在第二预设子句、原始连接查询语句中是否存在等值筛选条件或等值连接条件、原始连接查询语句的来源项链表中包含的视图的数量、以及原始连接查询语句的来源项链表中包含的视图的内容等,对原始连接语句进行限定,筛选出满足预设优化条件的原始连接语句,并对其进行下一步的归并处理。
具体的,原始连接查询语句的查询项中可以包含:复杂查询表达式、子查询、集函数或列等。原始连接查询语句中可以包含:分组子句、分组列过滤子句、筛选子句、层次查询子句、固定范围获取子句或伪列等。其中,在本实施例中,分组子句可以解释为含有groupby的子句;分组列过滤子句可以解释为含有having的子句;筛选子句可以解释为含有where的子句;层次查询子句可以解释为含有connect by的子句;获取固定范围子句可以解释为含有top的子句;伪列可以解释为rownum列或rowid列。示例性的,等值筛选条件可以解释为,在原始连接查询语句中,存在筛选子句且子句中含有等值筛选的条件,如:where a.c1=v.c1;等值连接条件可以解释为,在原始连接查询语句中,存在连接子句且子句中含有等值连接的条件,如:from a join b on a.c1=b.c1。
进一步的,预设优化条件包括同时符合如下所有项目:
1)原始连接查询语句的查询项链表中各项的类型均为列。
具体的,遍历原始连接查询语句的内存,在获取原始连接查询语句的查询项链表后,可以确定出原始连接查询语句的查询项链表中每一项的类型,若每一项的类型都是列,则满足预设优化条件,可对其进行下一步的判断。
2)原始连接查询语句中不存在第二预设伪列项和获取固定范围子句,其中,第二预设伪列项表示结果集中的位置。
具体的,遍历原始连接查询语句的内存,若原始连接查询语句中不存在第二预设伪列项和获取固定范围子句,则满足预设优化条件,可对其进行下一步的判断。
示例性的,从原始连接查询语句的内存结构中可以获取原始连接查询语句中是否含有第二预设伪列项和获取固定范围子句,其中第二预设伪列项可以解释为rownum项,其查询返回的是结果集中行的序列,用户可以对伪列进行查询,但不能插入、更新和删除伪列的值;获取固定范围子句可以解释为TOP子句,其获取固定范围的结果集,例如select TOP10from T1,其表示获取前10行数据。
3)原始连接查询语句中不存在分组子句、分组列过滤子句以及层次查询子句。
具体的,遍历原始连接查询语句的内存,若原始连接查询语句中不存在分组子句、分组列过滤子句以及层次查询子句,则满足预设优化条件,可对其进行下一步的判断。
示例性的,通过遍历原始连接查询语句的内存,可以获取原始连接查询语句中的分组项链表,若该分组项链表的长度为零,则表示该原始连接查询语句中没有分组子句;通过遍历原始连接查询语句的内存,可以获取原始连接查询语句中的分组列过滤项链表,若该分组列过滤项链表的长度为零,则表示该原始连接查询语句中没有分组列过滤子句;通过遍历原始连接查询语句的内存,可以获取原始连接查询语句中的层次查询内存,若该层次查询内存为空,则表示该原始连接查询语句中没有层次查询子句。值得注意的是,上文的第二预设子句包括:分组子句、分组列过滤子句以及层次查询子句等。
4)原始连接查询语句的来源项和筛选项链表中存在等值筛选条件或等值连接条件。
具体的,遍历原始连接查询语句的内存,若原始连接查询语句的来源项和筛选项链表中存在连接条件或筛选条件,且连接子句有一个不为空且为等值的条件,或筛选子句有一个不为空且为等值的条件,则满足预设优化条件,可对其进行下一步的判断。
5)原始连接查询语句的来源项链表中包含一个视图,视图定义语句中包含分组子句,视图定义语句中不存在第二预设伪列项、获取固定范围子句和层次查询子句,视图定义语句的来源项链表中各项的类型均为表类型。
具体的,遍历原始连接查询语句的内存,若原始连接查询语句的来源项链表中只包含一个视图,则获取该视图对应的视图定义语句的内存,若该视图的定义语句中包含有分组子句,且不存在第二预设伪列项、获取固定范围子句和层次查询子句,并且视图定义语句的来源项链表中的每一项均为表类型,则满足预设优化条件。
S203、获取所述原始连接查询语句对应的视图定义语句,将原始连接查询语句的来源项链表中的视图替换为视图定义语句中的来源项链表,得到第一语句。
具体的,若原始连接语句满足预设优化条件,则获取原始连接查询语句的来源项链表,以及原始连接查询语句对应的视图定义语句的来源项链表,如果原始连接查询语句的来源项链表中存在视图,则将原始连接查询语句的来源项链表中的视图替换为视图定义语句中的来源项链表,此替换后的语句即为第一语句。
示例性的,若原始连接查询语句的来源项为:from a,v,视图定义语句的来源项为:from b,替换后为:from a,b。若原始连接查询语句为:select/*+ENABLE_HASH_JOIN(1)*/a.c2,v.c1,v.c2 from a,v where a.c1=v.c1 order by a.c2,视图定义语句为:create view v as select/*+INDEX(b,ind)*/b.c1,sum(b.c2)c2 from b where b.c1<10group by b.c1,替换后的第一语句为:select/*+ENABLE_HASH_JOIN(1)*/a.c2,v.c1,v.c2 from a,b where a.c1=v.c1 order by a.c2。
S204、将第一语句中视图列的查询项替换为视图定义语句中相应列对应的查询项,得到第二语句。
具体的,在获得第一语句后,从内存中遍历分析第一语句的查询项链表,若第一语句的查询项链表中引用了视图列,则将第一语句中视图列对应的查询项替换为视图定义语句中相应列对应的查询项,即可得到第二语句。
示例性的,若第一语句为:select a.c2,v.c1,v.c2 from a join b on a.c1=v.c1,第一语句中的查询项为:select a.c2,v.c1,v.c2,视图定义语句为:create view vas select b.c1,sum(b.c2)c2 from b where b.c1<10group by b.c1,替换后的第二语句为:select a.c2,b.c1,sum(b.c2)from a join b on a.c1=v.c1。
可选的,将第一语句中视图列的查询项替换为视图定义语句中相应列对应的查询项之后,还包括,从内存中遍历分析第一语句的来源项链表,若第一语句的来源项链表中引用了视图列,则将该视图列替换为视图定义语句中相应列对应的查询项。
示例性的,若第一语句为:select a.c2,b.c1,sum(b.c2)from a join b on a.c1=v.c1,第一语句中的来源项为:from a join b on a.c1=v.c1,视图定义语句为:createview v as select b.c1,sum(b.c2)c2 from b where b.c1<10group by b.c1,替换后的第二语句为:select a.c2,b.c1,sum(b.c2)from a join b on a.c1=b.c1。
可选的,将第一语句中视图列的查询项替换为视图定义语句中相应列对应的查询项之后,还包括,从内存中遍历分析第一语句的筛选项链表,若第一语句的筛选项链表中引用了视图列,则将该视图列替换为视图定义语句中相应列对应的查询项。
示例性的,若第一语句为:select a.c2,b.c1,sum(b.c2)from a,b where a.c1=v.c1,第一语句中的筛选子句为:where a.c1=v.c1,视图定义语句为:create view v asselect b.c1,sum(b.c2)c2 from b where b.c1<10group by b.c1,替换后的第二语句为:select a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1。
可选的,将第一语句中视图列的查询项替换为视图定义语句中相应列对应的查询项之后,还包括,从内存中遍历分析第一语句的排序项链表,若第一语句的排序项链表中引用了视图列,则将该视图列替换为视图定义语句中相应列对应的查询项。
示例性的,若第一语句为:select a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1 order by v.c1,第一语句中的排序子句为:order by v.c1,视图定义语句为:createview v as select b.c1,sum(b.c2)c2 from b where b.c1<10group by b.c1,替换后的第二语句为:select a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1 order by b.c1。
S205、在第二语句中包含筛选子句的情况下,将第二语句中的筛选条件替换为目标筛选条件,得到第三语句,其中,目标筛选条件为第二语句中的筛选条件和视图定义语句中的筛选条件的求与结果。
具体的,在获得第二语句后,若第二语句中包含筛选子句,则将第二语句的筛选子句的筛选条件和视图定义语句的筛选子句的筛选条件做与运算,此运算条件即为目标筛选条件,将第二语句中的筛选条件替换为目标筛选条件,从而得到第三语句。值得注意的是,若第二语句中不包含筛选子句,则不进行此步骤,第三语句相当于第二语句。
示例性的,若第二语句为:select a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1 order by a.c2,视图定义语句为:create view v as select b.c1,sum(b.c2)c2from b where b.c1<10group by b.c1,替换后的第三语句为:select a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1&&b.c1<10order by a.c2。
S206、对视图定义语句中的分组项进行预设处理,得到目标分组项,并将目标分组项添加至第三语句中,得到第四语句。
具体的,在获第三语句后,将视图定义语句中的分组项进行预设处理,获得目标分组项,并将其加入至第三语句中,即可获得第四语句。其中,预设处理包括:对原始连接查询语句或视图定义语句中的内容的替换、修改和删除等。
进一步的,对视图定义语句中的分组项进行预设处理,得到目标分组项,包括:遍历第三语句的来源项中包含的非视图来源项数据表,将遍历得到的非视图来源项数据表的第一预设伪列加入视图定义语句中的分组项中,得到第一分组项,其中,第一预设伪列用于表示物理地址;将第三语句的查询项中涉及的非视图来源项数据表的列加入第一分组项中,得到第二分组项;将第三语句的排序项中当前未存在于第二分组项中的非视图来源项数据表的列,加入第二分组项中,得到目标分组项。
具体的,预设处理可以包括以下步骤:首先遍历第三语句的来源项中包含的非视图来源项数据表,将该表的第一预设伪列加入到视图定义语句的分组项中,从而得到第一分组项,其中第一预设伪列可以解释为:rowid伪列,用于表示物理地址,例如:将表a的rowid列加入视图定义语句的分组项中,则视图定义语句的分组项由group by b.c1变化为group by b.c1,a.rowid;然后将第三语句的查询项中涉及的非视图来源项数据表的列加入第一分组项中,得到第二分组项,例如:若第三语句的查询项中涉及的非视图来源项数据表的列为a.c2,则第二分组项为group by b.c1,a.rowid,a.c2;再将第三语句的排序项当前未存在于第二分组项中的非视图来源项数据表的列加入至第二分组项中,得到目标分组项,例如,若第三语句的排序项为:order by a.c2,第二分组项为:group by b.c1,a.rowid,a.c2,则目标分组项为:group by b.c1,a.rowid,a.c2。
示例性的,若目标分组项为:group by b.c1,a.rowid,a.c2,第三语句为:selecta.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1&&b.c1<10order by a.c2,将目标分组项添加至第三语句中,得到第四语句为:select a.c2,b.c1,sum(b.c2)from a,b wherea.c1=b.c1&&b.c1<10group by b.c1,a.rowid,a.c2 order by a.c2。
S207、根据第四语句确定归并处理结果。
具体的,在获得第四语句后,即可根据第四语句确定出归并处理结果。
可选的,根据第四语句确定归并处理结果,包括:在视图定义语句中包含分组列过滤项和/或提示项的情况下,将所包含的分组列过滤项和/或提示项添加至第四语句中,得到第五语句;根据第五语句确定归并处理结果。
具体的,若视图定义语句中包含有分组列过滤项和/或提示项时,即视图定义语句的分组列过滤项和/或提示项链表不为空时,则需遍历该链表,并将该分组列过滤项和/或提示项添加至第四语句中,从而得到第五语句,第五语句即为归并处理后的结果。
示例性的,若第四语句为:select/*+ENABLE_HASH_JOIN(1)*/a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1&&b.c1<10group by b.c1,a.rowid,a.c2 order bya.c2,视图定义语句为:create view v as select/*+INDEX(b,ind)*/b.c1,sum(b.c2)c2from b where b.c1<10group by b.c1,则第五语句为:select/*+ENABLE_HASH_JOIN(1)INDEX(b,ind)*/a.c2,b.c1,sum(b.c2)from a,b where a.c1=b.c1&&b.c1<10group byb.c1,a.rowid,a.c2 order by a.c2。
S208、根据归并处理结果确定优化后的目标连接查询语句,
其中,目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。
本发明实施例提供的连接查询语句处理方法,首先将满足预设优化条件的原始连接查询语句和其对应的视图定义语句进行归并处理,并根据归并处理结果确定出优化后的目标连接查询语句,将视图定义语句和连接查询语句归并到一起,达到先进行表与表之间的连接,再进行分组计算的目的,大大降低了分组计算的数据量,从而极大地提升了整个连接查询语句的执行效率。
在上述实施例基础上,该方法还可包括:
在将原始连接查询语句的来源项中的视图替换为视图定义语句中的来源项链表之前,还包括:判断视图定义语句的来源项中的表名或表别名,是否与原始连接查询语句的来源项中的表名或表别名重复,若是,则对视图定义语句的来源项中的表名或表别名进行重命名处理。这样设置的好处在于,避免了语句被被执行时因重名而导致的报错。
具体的,原始连接查询语句的来源项中的视图替换为视图定义语句中的来源项链表之前,即在判断出原始连接查询语句满足预设优化条件时,在获取原始连接查询语句对应的视图定义语句之后,可以先对视图定义语句的查询子句的来源项链表进行遍历,若视图定义语句的查询子句的来源项中的表名或表别名与原始连接查询语句的来源项中的表名或表别名重复,则视图定义语句的查询子句的来源项中的表名或表别名重取别名,其中命名规则可以为:字母_时间_数字,数字部分可叠加,再将重取别名后的视图定义语句的查询子句的来源项的表名或表别名添加至临时链表中。最后,将视图定义语句中引用列的所属表名替换为重命名的别名。
示例性的,若视图定义语句为:create view v as select a.c1 as c1 from a,原始连接查询语句为:select a.c1,v.c1 from a,v,则替换后的视图定义语句为:createview v as select dm_20220301_1.c1as c1 from a as dm_20220301_1。
示例性的,若不对原始连接查询语句进行归并处理则按照以下步骤执行:
Figure BDA0003570039500000161
具体的,执行过程为:控制流从上向下传递,数据流从下向上传递。执行计划中,每个节点含义可以解释为:CSCN2表示索引扫描,第10行表示扫描b表数据;SLCT2表示行过滤,第9行对10行进行调节b.c1<10条件过滤;HAGR2表分组,第8行表示对第9行操作返回的结果分组;PRJT2表示查询列计算投影,7行表示获取分组后c1列,和c2列求和后的结果集;第6行节点表示对A表数据进行扫描;#NEST LOOP INNER JOIN2表示嵌套循环连接,第5行表示7行操作返回的结果和6行操作返回结果做连接;SLCT2表示行过滤,第4行表示将第5行结果找出满足条件a.c1=v.c1的行;SORT3表示排序,第三行表示对第四行返回的结果排序;第二行表示获取a.c2,v.c1,v.c2列的数据;NSET2表示返回最终结果。
进一步的,上述原始连接查询语句即为表a和视图v的连接查询语句,执行上述原始连接查询语句时需要首先计算v视图的结果集,此时需要查询b表数据,如果b表数据很大,那么上述查询语句的主要执行时间都将消耗在v视图定义语句中的分组计算过程中。但若先将视图v和表a的原始连接查询语句归并处理,从而先进行表a和表b的连接操作,再进行分组计算,则提升整个查询语句的执行效率,并减少分组计算的数据,则具体执行步骤变化为:
Figure BDA0003570039500000171
实施例三
图3为本发明实施例三提供的一种连接查询语句处理装置的结构示意图。如图3所示,该装置包括:连接查询语句获取模块301、连接查询语句判断模块302、归并处理模块303以及连接查询语句确定模块304,其中:
连接查询语句获取模块301,用于获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句;
连接查询语句判断模块302,用于判断原始连接查询语句是否满足预设优化条件;
归并处理模块303,用于在连接查询语句判断模块的判断结果为满足时,获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理;
连接查询语句确定模块304,用于根据归并处理模块的处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。
本发明实施例提供的连接查询语句处理装置,将满足预设优化条件的原始连接查询语句和其对应的视图定义语句,进行归并处理,并根据归并处理结果确定出优化后的目标连接查询语句,大大降低了分组计算的数据量,从而极大地提升了整个连接查询语句的执行效率。
可选的,归并处理模块303包括:
第一语句获取单元:用于将原始连接查询语句的来源项链表中的视图替换为视图定义语句中的来源项链表,得到第一语句;
第二语句获取单元:用于将第一语句中视图列的查询项替换为视图定义语句中相应列对应的查询项,得到第二语句;
第三语句获取单元:用于在第二语句中包含筛选条件的情况下,将第二语句中的筛选条件替换为目标筛选条件,得到第三语句,其中,目标筛选条件为第二语句中的筛选条件和视图定义语句中的筛选条件的求与结果;
第四语句获取单元:用于对视图定义语句中的分组项进行预设处理,得到目标分组项,并将目标分组项添加至第三语句中,得到第四语句;
进一步的,对视图定义语句中的分组项进行预设处理,得到目标分组项,包括:
遍历第三语句的来源项中包含的非视图来源项数据表,将遍历得到的非视图来源项数据表的第一预设伪列加入视图定义语句中的分组项中,得到第一分组项,其中,第一预设伪列用于表示物理地址;将第三语句的查询项中涉及的非视图来源项数据表的列加入第一分组项中,得到第二分组项;将第三语句的排序项中当前未存在于第二分组项中的非视图来源项数据表的列,加入第二分组项中,得到目标分组项。
归并处理确定单元:用于根据第四语句确定归并处理结果。
进一步的,根据第四语句确定归并处理结果,包括:
在视图定义语句中包含分组列过滤项和/或提示项的情况下,将所包含的分组列过滤项和/或提示项添加至第四语句中,得到第五语句;根据第五语句确定归并处理结果。
可选的,预设优化条件基于下述至少一项设定:原始连接查询语句的查询项链表中各项的类型、原始连接查询语句中是否存在第二预设伪列项或第一预设子句、原始连接查询语句中是否存在第二预设子句、原始连接查询语句中是否存在等值筛选条件或等值连接条件、原始连接查询语句的来源项链表中包含的视图的数量、以及原始连接查询语句的来源项链表中包含的视图的内容。
进一步的,预设优化条件包括同时符合如下所有项目:
原始连接查询语句的查询项链表中各项的类型均为列;原始连接查询语句中不存在第二预设伪列项和获取固定范围子句,其中,第二预设伪列项表示结果集中的位置;原始连接查询语句中不存在分组子句、分组列过滤子句以及层次查询子句;原始连接查询语句的来源项和筛选项链表中存在等值筛选条件或等值连接条件;原始连接查询语句的来源项链表中包含一个视图,视图定义语句中包含分组子句,视图定义语句中不存在第二预设伪列项、获取固定范围子句和层次查询子句,视图定义语句的来源项链表中各项的类型均为表类型。
可选的,归并处理模块还包括:
表名处理单元,用于在第一语句获取单元将原始连接查询语句的来源项链表中的视图替换为视图定义语句中的来源项链表之前,判断视图定义语句的来源项中的表名或表别名,是否与原始连接查询语句的来源项中的表名或表别名重复,若是,则对视图定义语句的来源项中的表名或表别名进行重命名处理。
本发明实施例所提供的连接查询语句处理装置可执行本发明任意实施例所提供的连接查询语句处理方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4示出了可以用来实施本发明实施例的电子设备40的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图4所示,电子设备40包括至少一个处理器41,以及与至少一个处理器41通信连接的存储器,如只读存储器(ROM)42、随机访问存储器(RAM)43等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器41可以根据存储在只读存储器(ROM)42中的计算机程序或者从存储单元48加载到随机访问存储器(RAM)43中的计算机程序,来执行各种适当的动作和处理。在RAM 43中,还可存储电子设备40操作所需的各种程序和数据。处理器41、ROM 42以及RAM 43通过总线44彼此相连。输入/输出(I/O)接口45也连接至总线44。
电子设备10中的多个部件连接至I/O接口45,包括:输入单元46,例如键盘、鼠标等;输出单元47,例如各种类型的显示器、扬声器等;存储单元48,例如磁盘、光盘等;以及通信单元49,例如网卡、调制解调器、无线通信收发机等。通信单元49允许电子设备40通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器41可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器41的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器41执行上文所描述的各个方法和处理,例如一种连接查询语句处理方法。
在一些实施例中,连接查询语句处理方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元48。在一些实施例中,计算机程序的部分或者全部可以经由ROM 42和/或通信单元49而被载入和/或安装到电子设备40上。当计算机程序加载到RAM 43并由处理器41执行时,可以执行上文描述的连接查询语句处理方法的一个或多个步骤。备选地,在其他实施例中,处理器41可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行连接查询语句处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
上述提供的计算机设备可用于执行上述任意实施例提供的连接查询语句处理方法,具备相应的功能和有益效果。
实施例五
在本发明的上下文中,计算机可读存储介质可以是有形的介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种连接查询语句处理方法,该方法包括:
获取原始连接查询语句,其中,原始连接查询语句为针对数据表和视图的连接查询语句;
判断原始连接查询语句是否满足预设优化条件;
若满足,则获取原始连接查询语句对应的视图定义语句,将视图定义语句和原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使目标连接查询语句被执行时,先进行数据表的连接操作,再基于连接操作后得到的结果集进行计算。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
上述提供的计算机设备可用于执行上述任意实施例提供的连接查询语句处理方法,具备相应的功能和有益效果。
值得注意的是,上述连接查询语句处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种连接查询语句处理方法,其特征在于,包括:
获取原始连接查询语句,其中,所述原始连接查询语句为针对数据表和视图的连接查询语句;
判断所述原始连接查询语句是否满足预设优化条件;
若满足,则获取所述原始连接查询语句对应的视图定义语句,将所述视图定义语句和所述原始连接查询语句进行归并处理,并根据归并处理结果确定优化后的目标连接查询语句,以使所述目标连接查询语句被执行时,先进行数据表的连接操作,再基于所述连接操作后得到的结果集进行计算。
2.根据权利要求1所述的方法,其特征在于,所述将所述视图定义语句和所述原始连接查询语句进行归并处理,包括:
将原始连接查询语句的来源项链表中的视图替换为所述视图定义语句中的来源项链表,得到第一语句;
将所述第一语句中视图列的查询项替换为所述视图定义语句中相应列对应的查询项,得到第二语句;
在所述第二语句中包含筛选条件的情况下,将所述第二语句中的筛选条件替换为目标筛选条件,得到第三语句,其中,所述目标筛选条件为所述第二语句中的筛选条件和所述视图定义语句中的筛选条件的求与结果;
对所述视图定义语句中的分组项进行预设处理,得到目标分组项,并将所述目标分组项添加至所述第三语句中,得到第四语句;
根据所述第四语句确定归并处理结果。
3.根据权利要求2所述的方法,其特征在于,所述对所述视图定义语句中的分组项进行预设处理,得到目标分组项,包括:
遍历所述第三语句的来源项中包含的非视图来源项数据表,将遍历得到的非视图来源项数据表的第一预设伪列加入所述视图定义语句中的分组项中,得到第一分组项,其中,所述第一预设伪列用于表示物理地址;
将所述第三语句的查询项中涉及的非视图来源项数据表的列加入所述第一分组项中,得到第二分组项;
将所述第三语句的排序项中当前未存在于所述第二分组项中的非视图来源项数据表的列,加入所述第二分组项中,得到目标分组项。
4.根据权利要求2所述的方法,其特征在于,所述根据所述第四语句确定归并处理结果,包括:
在所述视图定义语句中包含分组列过滤项和/或提示项的情况下,将所包含的分组列过滤项和/或提示项添加至所述第四语句中,得到第五语句;
根据所述第五语句确定归并处理结果。
5.根据权利要求2所述的方法,其特征在于,在所述将原始连接查询语句的来源项中的视图替换为所述视图定义语句中的来源项链表之前,还包括:
判断所述视图定义语句的来源项中的表名或表别名,是否与所述原始连接查询语句的来源项中的表名或表别名重复,若是,则对所述视图定义语句的来源项中的表名或表别名进行重命名处理。
6.根据权利要求1所述的方法,其特征在于,所述预设优化条件基于下述至少一项设定:
原始连接查询语句的查询项链表中各项的类型、原始连接查询语句中是否存在第二预设伪列项或第一预设子句、原始连接查询语句中是否存在第二预设子句、原始连接查询语句中是否存在等值筛选条件或等值连接条件、原始连接查询语句的来源项链表中包含的视图的数量、以及原始连接查询语句的来源项链表中包含的视图的内容。
7.根据权利要求6所述的方法,其特征在于,所述预设优化条件包括同时符合如下所有项目:
原始连接查询语句的查询项链表中各项的类型均为列;
原始连接查询语句中不存在第二预设伪列项和获取固定范围子句,其中,所述第二预设伪列项表示结果集中的位置;
原始连接查询语句中不存在分组子句、分组列过滤子句以及层次查询子句;
原始连接查询语句的来源项和筛选项链表中存在等值筛选条件或等值连接条件;
原始连接查询语句的来源项链表中包含一个视图,视图定义语句中包含分组子句,视图定义语句中不存在所述第二预设伪列项、获取固定范围子句和层次查询子句,视图定义语句的来源项链表中各项的类型均为表类型。
8.一种连接查询语句处理装置,其特征在于,包括:
连接查询语句获取模块,用于获取原始连接查询语句,其中,所述原始连接查询语句为针对数据表和视图的连接查询语句;
连接查询语句判断模块,用于判断所述原始连接查询语句是否满足预设优化条件;
归并处理模块,用于在所述连接查询语句判断模块的判断结果为满足时,获取所述原始连接查询语句对应的视图定义语句,将所述视图定义语句和所述原始连接查询语句进行归并处理;
连接查询语句确定模块,用于根据所述归并处理模块的处理结果确定优化后的目标连接查询语句,以使所述目标连接查询语句被执行时,先进行数据表的连接操作,再基于所述连接操作后得到的结果集进行计算。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;
以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的连接查询语句处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的连接查询语句处理方法。
CN202210319792.3A 2022-03-29 2022-03-29 一种连接查询语句处理方法、装置、设备及存储介质 Pending CN114637752A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210319792.3A CN114637752A (zh) 2022-03-29 2022-03-29 一种连接查询语句处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210319792.3A CN114637752A (zh) 2022-03-29 2022-03-29 一种连接查询语句处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN114637752A true CN114637752A (zh) 2022-06-17

Family

ID=81951176

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210319792.3A Pending CN114637752A (zh) 2022-03-29 2022-03-29 一种连接查询语句处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114637752A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024016594A1 (zh) * 2022-07-19 2024-01-25 天翼云科技有限公司 一种伪列实现方法、装置、电子设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024016594A1 (zh) * 2022-07-19 2024-01-25 天翼云科技有限公司 一种伪列实现方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN108304505B (zh) 一种sql语句的处理方法、装置、服务器及存储介质
CN112559554B (zh) 一种查询语句优化方法及装置
CN110795455A (zh) 依赖关系解析方法、电子装置、计算机设备及可读存储介质
WO2017019879A1 (en) Multi-query optimization
CN108280234B (zh) 数据查询方法及装置
US20230126509A1 (en) Database management system and method for graph view selection for a relational-graph database
CN109684393A (zh) 数据采集方法、计算机可读存储介质及终端设备
CN111666468A (zh) 一种基于团簇属性在社交网络中搜索个性化影响力社区的方法
CN114637752A (zh) 一种连接查询语句处理方法、装置、设备及存储介质
CN114372165A (zh) 一种跳跃式连接的优化路径查询方法、装置、设备及存储介质
CN110069523A (zh) 一种数据查询方法、装置和查询系统
CN111309753A (zh) 结构化查询语句的优化方法、装置、设备及存储介质
CN110990423B (zh) Sql语句的执行方法、装置、设备和存储介质
US9135302B2 (en) Query rewrite with a nested materialized view
CN114547086B (zh) 数据处理方法、装置、设备及计算机可读存储介质
Kvet Dangling predicates and function call optimization in the oracle database
Brisaboa et al. Rank-based strategies for cleaning inconsistent spatial databases
CN110162574B (zh) 数据重分布方式的确定方法、装置、服务器及存储介质
CN113868138A (zh) 测试数据的获取方法、系统、设备及存储介质
CN113821514A (zh) 数据拆分方法、装置、电子设备和可读存储介质
WO2017019889A1 (en) Maintaining performance in the presence of insertions, deletions, and streaming queries
CN115827930B (zh) 一种图数据库的数据查询优化方法、系统和装置
CN117408220B (zh) 一种可编程交换架构芯片资源排布方法及装置
US20240232194A1 (en) Key range query optimization
CN111159218B (zh) 数据处理方法、装置及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination