CN110334109A - 关系式数据库数据查询方法、系统、介质和电子设备 - Google Patents
关系式数据库数据查询方法、系统、介质和电子设备 Download PDFInfo
- Publication number
- CN110334109A CN110334109A CN201910380870.9A CN201910380870A CN110334109A CN 110334109 A CN110334109 A CN 110334109A CN 201910380870 A CN201910380870 A CN 201910380870A CN 110334109 A CN110334109 A CN 110334109A
- Authority
- CN
- China
- Prior art keywords
- query
- time
- data
- sentence
- relational database
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2438—Embedded query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2477—Temporal data queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Abstract
本发明提供一种关系式数据库数据查询方法、系统、介质及电子设备。所述方法包括:当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件;获取待查询数据对应的查询时间段;根据时间类型拆解所述查询时间段,生成时间组件;根据所述指标组件及所述时间组件自动生成结构化查询语句;执行所述结构化查询语句,获得查询结果;根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。
Description
技术领域
本发明涉及关系式数据库查询技术领域,具体而言,涉及一种关系式数据库数据查询方法、系统、介质和电子设备。
背景技术
目前,关系式数据库查询数据使用的是结构化查询语言SQL,也称为“数据检索语句”。SQL语言是一种交互式查询语言,允许用户直接查询存储数据,其主要结构如下:SELECT column1,column2,...,FROM TABLE WHERE condition1 and condition2...GROUPBY Group Column1,Group Column2…。
结构化查询语言SQL用来从表中获取数据,确认数据怎样在应用程序输出。结构化查询语言SQL虽然能在数据库客户端查询需要的数据,但是在复杂的业务处理以及要求实时查询大数据的环境下,却显得日益笨拙:
1)可读性不强,对于不懂结构化查询语言的技术人员来说难以理解。
2)对于数据量大的查询,显得性能低下,不能快速满足实时查询数据的要求。
3)对于计算机输出的错误数据,不能直观的知道是数据异常还是查询语句错误。
4)SQL语句的查询条件很多的情况下,如果想直接在数据库通过SQL进行交互查询,需要技术人员去手动生成查询条件,再执行SQL,效率比较低,对于一些特定条件的值也不容易获取。
5)多个外部源获取关系式数据库相同的数据,需要写相同的结构化查询语言SQL让计算机重新计算。
因此,在长期的研发当中,发明人对关系式数据库数据查询进行了大量的研究,提出了一种关系式数据库数据查询方法,以解决上述技术问题之一。
发明内容
本发明的目的在于提供一种关系式数据库数据查询方法、系统、介质和电子设备,能够解决上述提到的至少一个技术问题。具体方案如下:
根据本发明的具体实施方式,第一方面,本发明提供一种关系式数据库数据查询方法,包括:当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件;获取待查询数据对应的查询时间段;根据时间类型拆解所述查询时间段,生成时间组件;根据所述指标组件及所述时间组件自动生成结构化查询语句;执行所述结构化查询语句,获得查询结果;根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。
根据本发明的具体实施方式,第二方面,本发明提供一种关系式数据库数据查询系统,包括:指标组件生成模块,用于当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件;获取模块,用于获取待查询数据对应的查询时间段;时间组件生成模块,用于根据时间类型拆解所述查询时间段,生成时间组件;查询语句生成模块,用于根据所述指标组件及自动所述时间组件生成结构化查询语句;查询语句执行模块,用于执行所述结构化查询语句,获得查询结果;存储模块,用于根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。
根据本发明的具体实施方式,第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上任一项所述的关系式数据库数据查询方法。
根据本发明的具体实施方式,第四方面,本发明提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上任一项所述的关系式数据库数据查询方法。
本发明实施例的上述方案与现有技术相比,本发明根据外部获取关系式数据库的维度和指标,对维度和指标进行的存储,使再次获取相同维度和指标的数据能够复用;对于关系式数据异常数据,技术人员根据维度与指标组合的SQL也能快速定位问题根本原因;对于大表数据的获取,将查询结果进行指数级降阶存储,使性能大大提高。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了根据本发明实施例的一种关系式数据库数据查询方法的流程图;
图2示出了根据本发明实施例的所述根据所述指标组件及所述时间组件自动生成结构化查询语句的方法流程图;
图3示出了根据本发明实施例的一种关系式数据库数据查询系统的结构示意图;
图4示出了根据本发明实施例的所述查询语句生成模块的结构示意图;
图5示出了根据本发明的实施例的电子设备的结构示意图;
图6示出了根据本发明的实施例的电子设备连接结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
实施例1
请参阅图1,本发明实施例提供一种关系式数据库数据查询方法,该方法包括如下步骤:
S1,当关系式数据库表中存在待查询数据的指标、维度及聚合方式,则生成指标组件。
具体的,已存在的关系式数据库表已经定义了指标、维度及聚合方式的常用类型,也就是说计算机中已预置了指标组件。当外部源获取数据库表数据时,需要明确是否存在需要的指标、维度及聚合方式。当关系式数据库表中存在待查询数据的指标、维度及聚合方式,则直接由外部源输入需要查询的指标、维度及相关的聚合数据,根据所述输入的指标、维度及聚合方式查询计算机中预置的指标组件,从而生成指标组件。
另一实施例中,当关系式数据库表中不存在待查询数据的指标、维度及聚合方式,则需要在本发明实施例提供的方法中进行预定义。
S2,获取待查询数据对应的查询时间段。
具体的,当外部源输入的维度包括时间维度时,获取所述指标组件中的查询时间段,如1990年至1995年,2019-03-03至2019-03-04。
S3,根据时间类型拆解所述查询时间段,生成时间组件。
具体的,所述时间类型包括年、天、日或默认时间段等分类。所述根据时间类型拆解所述查询时间段,生成时间组件的算法包括:
按年数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔年数个时间段;或
按天数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔天数个时间段;或
按月数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔月数个时间段。举例说明,对于查询时间段为1990年至1995年,按年数拆解的话,则生成的时间组件包括:1990年-1991年、1991年-1992年、1992年-1993年、1993年-1994年、1991年-1995年。
所述时间组件主要解决按天、按月、按年或时间段返回聚合信息的格式问题。若之前已经处理过相同的输入信息,可以直接返回外部需要的信息,无需加工处理;若之前没有处理过相同的输入信息,则需要通过指标、维度、聚合方式、时间段组装结构化查询语句SQL语句。
S4,根据所述指标组件及所述时间组件自动生成结构化查询语句。
具体的,原始的SQL查询结构包括:SELECT column1,column2,...,FROM TABLEWHERE condition1 and condition2,...,GROUP BY Group Column1,Group Column2,…。而,本发明实施例的结构化查询语句包括:SELECT,聚合方式,FROM,指标,WHERE,维度组合;其中,聚合方式、指标、维度由外部源输入,建立了外部统一语言。
如图2所示,所述根据所述指标组件及所述时间组件自动生成结构化查询语句,包括:
S41,根据所述待查询数据的指标确定所述结构化查询语句TABLE表名称;
S42,根据所述维度组装所述结构化查询语句的WHERE条件语句。具体的,根据外部输入数据判断是否有多个维度,每个维度的取值是否为列表。当有多个维度时采用AND连接;当每个维度的取值为列表时,列表取值用字符IN链接。本实施例中,多个维度的结构化查询语句包括WHERE time between‘2019-03-03’and‘2019-03-04’and type in(1,2,3)group by type。
S43,根据所述维度的属性组合判定所述维度的分组条件。
S44,根据所述聚合方式确认所述结构化查询语句中SELECT后的聚合函数。具体的,根据聚合方式明确聚合方法是COUNT(*),SUM(*)或其它聚合函数。
S45,依次组装所述SELECT语句,TABLE表,WHERE语句,生成一结构化查询语句。
S5,执行所述结构化查询语句,获得查询结果。
具体的,当执行多个结构化查询语句时,在不同时间段循环执行所述多个结构化查询语句。另一实施例中,当执行多个结构化查询语句时,可采用并行执行算法同时执行所述多个结构化查询语句,提高获取存储数据的效率。
S6,根据所述时间类型将所述查询结果存储至一关系式数据库指标统计存储表。
具体的,为了提高性能以及复用性将所述查询结果存储于关系型数据库指标统计存储表中。所述查询结果包括时间段、结构化查询语句及执行结果,其中,所述时间段为所述时间组件中拆解出的时间段。所述查询结果可以复用,下次外部再次获取该数据,不需要进行一系列条件解析,可直接返回结果,大大提高了效率。假如,现有技术中,每一天有10000条新数据,当外部源查询一年的时间段,一般情况下需要扫描10000*365条数据;查询一天,则需要扫描10000次;查询一个月需要扫描10000*30条数据。而,本发明实施例提供的方法的最小存储粒度是一天最多一条数据,当外部源查询一年的数据时,首次需要扫描365*1条数据,第二次时只需扫描1条数据;当外部源查询一个月的数据时,首次需要扫描30*1条数据,第二次时只需扫描1条数据;可见,本发明实施例提供的方法使扫描数据条数缩小了上百倍。
本发明实施例提供的方法主要解决不懂结构化查询语言的技术人员不能获取关系式数据库存储数据、数据量大情况下查询耗时、定位异常数据的问题方法复杂、不同外部源获取相同数据方法不能复用的问题。具体根据外部获取关系式数据库的维度和指标,对维度和指标进行的存储,使再次获取相同维度和指标的数据能够复用;对于关系式数据异常数据,技术人员根据维度与指标组合的SQL也能快速定位问题根本原因;对于大表数据的获取,将查询结果进行指数级降阶存储,使性能大大提高。
实施例2
请参阅图3,本发明实施例提供一种关系式数据库数据查询系统300,该系统300包括:指标组件生成模块310,获取模块320,时间组件生成模块330,查询语句生成模块340,查询语句执行模块350及存储模块360。
所述指标组件生成模块310,用于当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件。具体的,已存在的关系式数据库表已经定义了指标、维度及聚合方式的常用类型,也就是说计算机中已预置了指标组件。当外部源获取数据库表数据时,所述指标组件生成模块310需要明确是否存在需要的指标、维度及聚合方式。当关系式数据库表中存在待查询数据的指标、维度及聚合方式,则直接由外部源输入需要查询的指标、维度及相关的聚合数据,所述指标组件生成模块310根据所述输入的指标、维度及聚合方式查询计算机中预置的指标组件,从而生成指标组件。
另一实施例中,当关系式数据库表中不存在待查询数据的指标、维度及聚合方式,则需要在本发明实施例提供的方法中进行预定义。
所述获取模块320,用于获取待查询数据对应的查询时间段。具体的,当外部源输入的维度包括时间维度时,所述获取模块320获取所述指标组件中的查询时间段,如1990年至1995年,2019-03-03至2019-03-04。
所述时间组件生成模块330,用于根据时间类型拆解所述查询时间段,生成时间组件。具体的,所述时间类型包括年、天、日或默认时间段等分类。所述时间组件生成模块330生成时间组件的算法包括:
按年数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔年数个时间段;或按天数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔天数个时间段;或按月数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔月数个时间段。举例说明,对于查询时间段为1990年至1995年,按年数拆解的话,则生成的时间组件包括:1990年-1991年、1991年-1992年、1992年-1993年、1993年-1994年、1991年-1995年。
所述时间组件主要解决按天、按月、按年或时间段返回聚合信息的格式问题。若之前已经处理过相同的输入信息,可以直接返回外部需要的信息,无需加工处理;若之前没有处理过相同的输入信息,则需要通过指标、维度、聚合方式、时间段组装结构化查询语句SQL语句。
所述查询语句生成模块340,用于根据所述指标组件自动及所述时间组件生成结构化查询语句。具体的,原始的SQL查询结构包括:SELECT column1,column2,...,FROMTABLE WHERE condition1 and condition2,...,GROUP BY Group Column1,GroupColumn2,…。而,本发明实施例的结构化查询语句包括:SELECT,聚合方式,FROM,指标,WHERE,维度组合;其中,聚合方式、指标、维度由外部源输入,建立了外部统一语言。
如图4所示,所述查询语句生成模块340自动生成结构化查询语句,包括:
表名称确定模块341,用于根据所述待查询数据的指标确定所述结构化查询语句TABLE表名称;
维度组装模块342,用于根据所述维度组装所述结构化查询语句的WHERE条件语句。具体的,所述组装模块342根据外部输入数据判断是否有多个维度,每个维度的取值是否为列表。当有多个维度时采用AND连接;当每个维度的取值为列表时,列表取值用字符IN链接。本实施例中,所述组装模块342组装的多个维度的结构化查询语句包括WHERE timebetween‘2019-03-03’and‘2019-03-04’and type in(1,2,3)group by type。
分组判定模块343,用于根据所述维度的属性组合判定所述维度的分组条件。
函数确定模块344,用于根据所述聚合方式确认所述结构化查询语句中SELECT后的聚合函数。具体的,所述函数确定模块344根据聚合方式明确聚合方法是COUNT(*),SUM(*)或其它聚合函数。
查询语句组装模块345,用于依次组装所述SELECT语句,TABLE表,WHERE语句,生成一结构化查询语句。
所述查询语句执行模块350,用于执行所述结构化查询语句,获得查询结果。具体的,当执行多个结构化查询语句时,所述查询语句执行模块350在不同时间段循环执行所述多个结构化查询语句。另一实施例中,当执行多个结构化查询语句时,所述查询语句执行模块350可采用并行执行算法同时执行所述多个结构化查询语句,提高获取存储数据的效率。
所述存储模块360,用于根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。具体的,为了提高性能以及复用性,所述存储模块360将所述查询结果存储于关系型数据库指标统计存储表中。所述查询结果包括时间段、结构化查询语句及执行结果,其中,所述时间段为所述时间组件中拆解出的时间段。所述查询结果可以复用,下次外部再次获取该数据,不需要进行一系列条件解析,可直接返回结果,大大提高了效率。假如,现有技术中,每一天有10000条新数据,当外部源查询一年的时间段,一般情况下需要扫描10000*365条数据;查询一天,则需要扫描10000次;查询一个月需要扫描10000*30条数据。而,本发明实施例提供的方法的最小存储粒度是一天最多一条数据,当外部源查询一年的数据时,首次需要扫描365*1条数据,第二次时只需扫描1条数据;当外部源查询一个月的数据时,首次需要扫描30*1条数据,第二次时只需扫描1条数据;可见,本发明实施例提供的方法使扫描数据条数缩小了上百倍。
本发明实施例提供的系统主要解决不懂结构化查询语言的技术人员不能获取关系式数据库存储数据、数据量大情况下查询耗时、定位异常数据的问题方法复杂、不同外部源获取相同数据方法不能复用的问题。具体根据外部获取关系式数据库的维度和指标,对维度和指标进行的存储,使再次获取相同维度和指标的数据能够复用;对于关系式数据异常数据,技术人员根据维度与指标组合的SQL也能快速定位问题根本原因;对于大表数据的获取,将查询结果进行指数级降阶存储,使性能大大提高。
实施例3
如图5所示,本实施例提供一种电子设备,该设备用于财税平台的智能匹配方法,所述电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件;
获取待查询数据对应的查询时间段;
根据时间类型拆解所述查询时间段,生成时间组件;
根据所述指标组件及所述时间组件自动生成结构化查询语句;
执行所述结构化查询语句,获得查询结果;
根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。
实施例4
本公开实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的关系式数据库数据查询方法。
实施例5
下面参考图6,其示出了适于用来实现本公开实施例的电子设备600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
Claims (10)
1.一种关系式数据库数据查询方法,其特征在于,包括:
当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件;
获取待查询数据对应的查询时间段;
根据时间类型拆解所述查询时间段,生成时间组件;
根据所述指标组件及所述时间组件自动生成结构化查询语句;
执行所述结构化查询语句,获得查询结果;
根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。
2.根据权利要求1所述的方法,其特征在于,所述根据时间类型拆解所述查询时间段,生成时间组件的算法包括:
按年数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔年数个时间段;或,
按天数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔天数个时间段;或,
按月数拆解时,将所述查询时间段拆解成结束时间与开始时间的间隔月数个时间段。
3.根据权利要求1所述的方法,其特征在于,所述根据所述指标组件自动生成结构化查询语句,包括:
根据所述待查询数据的指标确定所述结构化查询语句TABLE表名称;
根据所述维度组装所述结构化查询语句的WHERE条件语句;
根据所述维度的属性组合判定所述维度的分组条件;
根据所述聚合方式确认所述结构化查询语句中SELECT后的聚合函数;
依次组装所述SELECT语句,TABLE表,WHERE语句,生成一结构化查询语句。
4.根据权利要求1所述的方法,其特征在于,当执行多个结构化查询语句时,在不同时间段循环执行所述多个结构化查询语句。
5.根据权利要求1所述的方法,其特征在于,当执行多个结构化查询语句时,采用并行执行算法同时执行所述多个结构化查询语句。
6.根据权利要求1所述的方法,其特征在于,所述查询结果包括时间段、结构化查询语句及执行结果。
7.根据权利要求1所述的方法,其特征在于,当关系式数据库指标统计存储表中不存在待查询数据的指标、维度及聚合方式时,则对所述待查询数据的指标、维度及聚合方式进行自定义。
8.一种关系式数据库数据查询系统,其特征在于,包括:
指标组件生成模块,用于当关系式数据库指标统计存储表中存在待查询数据的指标、维度及聚合方式,则生成指标组件;
获取模块,用于获取待查询数据对应的查询时间段;
时间组件生成模块,用于根据时间类型拆解所述查询时间段,生成时间组件;
查询语句生成模块,用于根据所述指标组件及自动所述时间组件生成结构化查询语句;
查询语句执行模块,用于执行所述结构化查询语句,获得查询结果;
存储模块,用于根据所述时间类型将所述查询结果存储于所述关系式数据库指标统计存储表。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至7中任一项所述的方法。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910380870.9A CN110334109B (zh) | 2019-05-08 | 2019-05-08 | 关系式数据库数据查询方法、系统、介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910380870.9A CN110334109B (zh) | 2019-05-08 | 2019-05-08 | 关系式数据库数据查询方法、系统、介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110334109A true CN110334109A (zh) | 2019-10-15 |
CN110334109B CN110334109B (zh) | 2020-07-24 |
Family
ID=68139607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910380870.9A Active CN110334109B (zh) | 2019-05-08 | 2019-05-08 | 关系式数据库数据查询方法、系统、介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110334109B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309729A (zh) * | 2020-02-13 | 2020-06-19 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种数据查询方法及装置 |
CN111782872A (zh) * | 2020-06-30 | 2020-10-16 | 北京百度网讯科技有限公司 | 查询方法、装置、电子设备以及存储介质 |
CN111782675A (zh) * | 2020-03-18 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 生成数据库脚本的方法、装置及计算机可读存储介质 |
CN111813871A (zh) * | 2020-06-30 | 2020-10-23 | 北京九章云极科技有限公司 | 一种数据实时处理系统及方法 |
CN112506948A (zh) * | 2020-12-03 | 2021-03-16 | 中国人寿保险股份有限公司 | 业务信息的指标查询方法及相关设备 |
CN113760950A (zh) * | 2021-03-15 | 2021-12-07 | 北京京东振世信息技术有限公司 | 指标数据查询方法、装置、电子设备以及存储介质 |
CN116150183A (zh) * | 2023-04-04 | 2023-05-23 | 深圳依时货拉拉科技有限公司 | 数据查询表达式生成方法、装置、设备及存储介质 |
CN111782675B (zh) * | 2020-03-18 | 2024-05-17 | 北京沃东天骏信息技术有限公司 | 生成数据库脚本的方法、装置及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539660B2 (en) * | 2003-10-23 | 2009-05-26 | International Business Machines Corporation | Method and system for generating SQL joins to optimize performance |
CN103020158A (zh) * | 2012-11-26 | 2013-04-03 | 中兴通讯股份有限公司 | 一种报表创建方法、装置和系统 |
CN103488774A (zh) * | 2013-09-29 | 2014-01-01 | 贵州省广播电视信息网络股份有限公司 | 一种用于大数据日志分析的处理方法 |
CN103500396A (zh) * | 2013-09-18 | 2014-01-08 | 北京思特奇信息技术股份有限公司 | 一种自动生成文件并发送邮件的方法及系统 |
CN107315751A (zh) * | 2016-04-26 | 2017-11-03 | 北京京东尚科信息技术有限公司 | 多维数据查询方法和装置 |
CN107783980A (zh) * | 2016-08-24 | 2018-03-09 | 阿里巴巴集团控股有限公司 | 索引数据生成及数据查询方法及装置、存储和查询系统 |
-
2019
- 2019-05-08 CN CN201910380870.9A patent/CN110334109B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539660B2 (en) * | 2003-10-23 | 2009-05-26 | International Business Machines Corporation | Method and system for generating SQL joins to optimize performance |
CN103020158A (zh) * | 2012-11-26 | 2013-04-03 | 中兴通讯股份有限公司 | 一种报表创建方法、装置和系统 |
CN103500396A (zh) * | 2013-09-18 | 2014-01-08 | 北京思特奇信息技术股份有限公司 | 一种自动生成文件并发送邮件的方法及系统 |
CN103488774A (zh) * | 2013-09-29 | 2014-01-01 | 贵州省广播电视信息网络股份有限公司 | 一种用于大数据日志分析的处理方法 |
CN107315751A (zh) * | 2016-04-26 | 2017-11-03 | 北京京东尚科信息技术有限公司 | 多维数据查询方法和装置 |
CN107783980A (zh) * | 2016-08-24 | 2018-03-09 | 阿里巴巴集团控股有限公司 | 索引数据生成及数据查询方法及装置、存储和查询系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309729A (zh) * | 2020-02-13 | 2020-06-19 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种数据查询方法及装置 |
CN111782675A (zh) * | 2020-03-18 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 生成数据库脚本的方法、装置及计算机可读存储介质 |
CN111782675B (zh) * | 2020-03-18 | 2024-05-17 | 北京沃东天骏信息技术有限公司 | 生成数据库脚本的方法、装置及计算机可读存储介质 |
CN111782872A (zh) * | 2020-06-30 | 2020-10-16 | 北京百度网讯科技有限公司 | 查询方法、装置、电子设备以及存储介质 |
CN111813871A (zh) * | 2020-06-30 | 2020-10-23 | 北京九章云极科技有限公司 | 一种数据实时处理系统及方法 |
CN111782872B (zh) * | 2020-06-30 | 2023-08-08 | 北京百度网讯科技有限公司 | 查询方法、装置、电子设备以及存储介质 |
CN112506948A (zh) * | 2020-12-03 | 2021-03-16 | 中国人寿保险股份有限公司 | 业务信息的指标查询方法及相关设备 |
CN113760950A (zh) * | 2021-03-15 | 2021-12-07 | 北京京东振世信息技术有限公司 | 指标数据查询方法、装置、电子设备以及存储介质 |
CN113760950B (zh) * | 2021-03-15 | 2023-09-05 | 北京京东振世信息技术有限公司 | 指标数据查询方法、装置、电子设备以及存储介质 |
CN116150183A (zh) * | 2023-04-04 | 2023-05-23 | 深圳依时货拉拉科技有限公司 | 数据查询表达式生成方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110334109B (zh) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11886464B1 (en) | Triage model in service monitoring system | |
CN110334109A (zh) | 关系式数据库数据查询方法、系统、介质和电子设备 | |
US10942960B2 (en) | Automatic triage model execution in machine data driven monitoring automation apparatus with visualization | |
CN111177231B (zh) | 报表生成方法和报表生成装置 | |
CN109523187A (zh) | 任务调度方法、装置和设备 | |
CN110083660A (zh) | 一种同步数据的方法、装置、介质和电子设备 | |
US9251222B2 (en) | Abstracted dynamic report definition generation for use within information technology infrastructure | |
CN109299348A (zh) | 一种数据查询方法、装置、电子设备及存储介质 | |
CN111427971B (zh) | 用于计算机系统的业务建模方法、装置、系统和介质 | |
WO2018177032A1 (zh) | 处理响应数据的方法、设备、客户端设备和电子设备 | |
CN109710859A (zh) | 数据查询方法和装置 | |
CN111813804A (zh) | 一种数据查询方法、装置、电子设备及存储介质 | |
CN110109983B (zh) | 一种操作Redis数据库的方法和装置 | |
CN108959642A (zh) | 用于写入信息的方法和装置 | |
CN109462648A (zh) | 一种用户行为跟踪方法、装置、设备和储存介质 | |
CN108959294A (zh) | 一种访问搜索引擎的方法和装置 | |
CN116594683A (zh) | 一种代码注释信息生成方法、装置、设备及存储介质 | |
CN110489180A (zh) | 一种埋点上报方法、装置、介质和电子设备 | |
CN109902245A (zh) | 交互式的信息提供方法及装置 | |
CN110045925A (zh) | 数据处理方法、装置、电子设备和计算机可读存储介质 | |
CN109766392A (zh) | 数据处理方法和装置 | |
WO2022220982A1 (en) | Database query execution on multiple databases | |
CN113377604B (zh) | 一种数据处理方法、装置、设备和存储介质 | |
CN113760969A (zh) | 一种基于ElasticSearch的数据查询方法和装置 | |
CN110309848A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |