CN110019385A - 计算指标的查询方法及装置 - Google Patents

计算指标的查询方法及装置 Download PDF

Info

Publication number
CN110019385A
CN110019385A CN201710786770.7A CN201710786770A CN110019385A CN 110019385 A CN110019385 A CN 110019385A CN 201710786770 A CN201710786770 A CN 201710786770A CN 110019385 A CN110019385 A CN 110019385A
Authority
CN
China
Prior art keywords
parameter
base values
calculation
index
mark
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
CN201710786770.7A
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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology 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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201710786770.7A priority Critical patent/CN110019385A/zh
Publication of CN110019385A publication Critical patent/CN110019385A/zh
Pending legal-status Critical Current

Links

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/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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries

Abstract

本发明公开了一种计算指标的查询方法及装置,涉及数据处理技术领域,为解决现有的计算指标查询方式效率低的问题而发明。本发明的方法包括:获取待查询的计算指标的标识或名称,计算指标为多个基础指标通过计算得到的指标;根据计算指标的标识或名称,确定计算指标对应的计算方式,计算方式中包含多个用于计算计算指标的基础指标;获取计算方式中包含的多个基础指标,并将多个基础指标确定为待查询子指标;构造每个待查询子指标对应的子查询语句;拼接子查询语句得到待查询的计算指标的查询语句;根据查询语句进行计算指标的查询。本发明适合应用在数据查询过程中。

Description

计算指标的查询方法及装置
技术领域
本发明涉及数据处理技术领域,尤其涉及一种计算指标的查询方法及装置。
背景技术
为了提高数据查询的效率,出现了查询语句自动生成器,用户在查询数据时,只要输入数据的名称或者身份标识ID,查询语句自动生成器可以根据事先配置好数据的计算方式自动拼接生成相应的查询语句,来实现数据的查询。例如,在收视数据处理领域,通过用户终端收集到的都是原始数据,比如用户每天对某个节目的收看时间、次数,在进行收视数据分析时,通常需要根据实际的需求将原始转换为不同的收视指标,比如用户平均播放时长、用户平均每天的播放时长等,以通过收视指标来反映不同节目的收视状况。收视指标通常是由记录的原始数据经过一些计算方式得到,为了更快捷的获取到收视指标,通常会使用查询语句自动生成器,在查询前在查询语句生成器中事先配置好各个收视指标的计算方式,然后就在用户输入收视指标的名称或者ID时,直接生成对应的查询语句并使用查询语句得到查询结果。
现有的查询语句自动生成器,对于一些计算指标,它是通过多个基础指标计算得到的,并且多个基础指标的查询条件不是全部相同的情况,查询语句自动生成器无法一次进行查询得到结果,需要分别对每个基础指标进行查询后再进行二次计算得到查询结果,因此会增加查询的复杂度,影响查询的效率。比如对一个由分子分母形式构成的计算指标,分子和分母中对应的基础指标的查询条件不同,则需要分别对分子分母使用查询语句自动生成器得到查询语句,分别得到分子分母对应的查询结果后再进行二次计算得到最终的查询结果。
发明内容
鉴于上述问题,本发明提供一种计算指标的查询方法及装置,能够提高计算指标的查询效率。
为解决上述技术问题,第一方面,本发明提供了一种计算指标的查询方法,该方法包括:
获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;
根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;
获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;
构造每个所述待查询子指标对应的子查询语句;
拼接所述子查询语句得到所述待查询的计算指标的查询语句;
根据所述查询语句进行所述计算指标的查询。
可选的,所述计算指标对应的计算方式存储于预先建立的指标表中,根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,包括:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
可选的,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,在获取所述计算方式中包含的多个基础指标之后,所述方法还包括:
确定每个所述基础指标对应的数值或计算方式;
若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
所述构造每个所述待查询子指标对应的子查询语句,包括:
获取所述基础指标对应的计算方式或所述基础指标对应的数值;
根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
可选的,在构造所述子查询语句之后,所述方法还包括:
将所述基础指标的标识存储到预设语句查询字典的键中,将所述子查询语句存储到所述预设语句查询字典的值中;
将所述基础指标的标识存储到预设名称查询字典的键中,将所述子查询语句的名称存储到所述预设名称查询字典的值中,所述预设语句查询字典以及所述预设名称查询字典为预先建立的用于存储基础指标查询信息的字典;
所述拼接所述子查询语句得到所述待查询的计算指标的查询语句,包括:
获取所述预设语句查询字典和所述预设名称查询字典;
根据所述计算指标的计算方式,确定所述计算方式包含的基础指标之间的关联关系;
根据所述关联关系将所述预设语句查询字典和所述预设名称查询字典中的基础指标查询信息进行拼接,得到所述待查询的计算指标的查询语句。
可选的,所述计算指标与多个维度相关联,所述多个维度存储于预先建立的维度表中,在根据所述查询语句进行所述计算指标的查询之前,所述方法还包括:
接收维度过滤条件,所述维度过滤条件中至少携带有所述计算指标关联的维度;
从所述维度表中查找与所述计算指标关联的维度相匹配的维度,并将查找到的维度作为所述待查询的计算指标的查询维度。
第二方面,本发明还提供了一种计算指标的查询装置,该装置包括:
第一获取单元,用于获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;
第一确定单元,用于根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;
第二获取单元,用于获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;
构造单元,用于构造每个所述待查询子指标对应的子查询语句;
拼接单元,用于拼接所述子查询语句得到所述待查询的计算指标的查询语句;
第一查询单元,用于根据所述查询语句进行所述计算指标的查询。
可选的,所述计算指标对应的计算方式存储于预先建立的指标表中,所述第一确定单元还用于:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
可选的,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,所述装置还包括:
第二确定单元,用于在获取所述计算方式中包含的多个基础指标之后,确定每个所述基础指标对应的数值或计算方式;
第二查询单元,用于若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
第三查询单元,用于若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
所述构造单元,包括:
第一获取模块,用于获取所述基础指标对应的计算方式或所述基础指标对应的数值;
构造模块,用于根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
可选的,所述装置还包括:
第一存储单元,用于在构造所述子查询语句之后将所述基础指标的标识存储到预设语句查询字典的键中,将所述子查询语句存储到所述预设语句查询字典的值中;
第二存储单元,用于将所述基础指标的标识存储到预设名称查询字典的键中,将所述子查询语句的名称存储到所述预设名称查询字典的值中,所述预设语句查询字典以及所述预设名称查询字典为预先建立的用于存储基础指标查询信息的字典;
所述拼接单元,包括:
第二获取模块,用于获取所述预设语句查询字典和所述预设名称查询字典;
确定模块,用于根据所述计算指标的计算方式,确定所述计算方式包含的基础指标之间的关联关系;
拼接模块,用于根据所述关联关系将所述预设语句查询字典和所述预设名称查询字典中的基础指标查询信息进行拼接,得到所述待查询的计算指标的查询语句。
可选的,所述计算指标与多个维度相关联,所述多个维度存储于预先建立的维度表中,所述装置还包括:
接收单元,用于在根据所述查询语句进行所述计算指标的查询之前,接收维度过滤条件,所述维度过滤条件中至少携带有所述计算指标关联的维度;
查找单元,用于从所述维度表中查找与所述计算指标关联的维度相匹配的维度,并将查找到的维度作为所述待查询的计算指标的查询维度。
为了实现上述目的,根据本发明的第三方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的计算指标的查询方法。
为了实现上述目的,根据本发明的第四方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的计算指标的查询方法。
借由上述技术方案,本发明提供的计算指标的查询方法及装置,在进行计算指标的查询时,能够将计算指标中涉及的多个基础指标定义为待查询子指标,然后分别构造每个待查询子指标的子查询语句,最后将得到的子查询语句进行拼接后得到计算指标的查询语句,并根据该查询语句进行计算指标的查询。可以看到,在进行计算指标的查询时,不需要先分别对涉及的多个基础指标进行查询得到查询结果后再进行二次计算来获取所要查询的计算指标的查询结果,而是直接通过拼接的查询语句就可以得到计算指标的查询结果。相比于现有的计算指标的查询方式更加的简便,因此能够提高计算指标的查询效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种计算指标的查询方法流程图;
图2示出了本发明实施例提供的另一种计算指标的查询方法流程图;
图3示出了本发明实施例提供的一种计算指标的查询装置的组成框图;
图4示出了本发明实施例提供的另一种计算指标的查询装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为了提高计算指标的查询效率,本发明实施例提供了一种计算指标的查询方法,如图1所示,该方法包括:
101、获取待查询的计算指标的标识或名称。
在进行计算指标的查询时,外部会输入计算指标的标识或名称,因此在通过外部接收外部输入能够获取计算指标的标识或名称。计算指标的标识或者名称是唯一标识计算指标的标识,计算指标的标识可以为全局唯一标识符(Globally Unique Identifier,Guid),也可以是自定义的其他标识符,计算指标的名称通常是根据计算指标的实际含义自定义的。获取计算指标的标识和名称是为了确定本次查询的对象。另外,需要说明的是,其中计算指标为多个基础指标通过计算得到的指标。比如,在进行电视节目数据分析的过程中,计算指标为每户平均播放时长,每户平均播放时长能够根据总的播放时长以及总的用户数计算得到,因此该计算指标对应的基础指标为总的播放时长以及总的用户数。
102、根据计算指标的标识或名称,确定计算指标对应的计算方式。
每个计算指标都有自身对应的计算方式,计算指标的计算方式也可以称为计算公式,是由计算指标本身的定义决定的。计算指标的标识、名称与计算指标的计算方式是一一对应的,因此可以根据计算指标的标识或名称,确定计算指标对应的计算方式。另外,由于计算指标为多个基础指标通过计算得到,计算指标的计算方式中包含多个用于计算计算指标的基础指标。具体的计算指标的计算方式中包含的基础指标是由基础指标的标识或名称表示的。
103、获取计算方式中包含的多个基础指标,并将多个基础指标确定为待查询子指标。
由步骤102可知,计算指标的计算方式中包含多个用于计算计算指标的基础指标,且基础指标是由基础指标的标识或名称表示的,因此可以从计算指标的计算方式中根据标识或名称获取到与标识或名称对应的多个基础指标,并将获取到的多个基础指标确定为待查询子指标。
104、构造每个待查询子指标对应的子查询语句。
构造每个待查询子指标对应的子查询语句是为后续得到计算指标的查询语句做基础准备的。计算指标是由多个基础指标通过计算得到的,因此想要查询计算指标,首先需要获取多个基础指标,而获取多个基础指标需要通过每个基础指标的查询语句即待查询子指标对应的子查询语句查询获取,因此要得到计算指标的查询语句必须首先构造待查询子指标对应的子查询语句。
具体构造子查询语句时对于不同的查询语言需要依据不同查询语言的构造的原则进行,不同的的查询语言的构造原则是不同的。比如,对于结构化查询语言(StructuredQuery Language,SQL),需要依据SQL的构造原则进行构造。
105、拼接子查询语句得到待查询的计算指标的查询语句,并根据查询语句进行计算指标的查询。
将由步骤104中得到的所有待查询子指标对应的子查询语句进行拼接形成一个查询语句即待查询的计算指标的查询语句,然后使用该查询语句进行计算指标的查询得到查询结果,这样就不需要分别通过每个子查询语句得到子查询的结果后,再使用子查询结果进行二次计算得到最终的查询结果,所以一定程度上提高了计算指标查询的效率。
本发明实施例提供的计算指标的查询方法,在进行计算指标的查询时,能够将计算指标中涉及的多个基础指标定义为待查询子指标,然后分别构造每个待查询子指标的子查询语句,最后将得到的子查询语句进行拼接后得到计算指标的查询语句,并根据该查询语句进行计算指标的查询。可以看到,在进行计算指标的查询时,不需要先分别对涉及的多个基础指标进行查询得到查询结果后再进行二次计算来获取所要查询的计算指标的查询结果,而是直接通过拼接的查询语句就可以得到计算指标的查询结果。相比于现有的计算指标的查询方式更加的简便,因此能够提高计算指标的查询效率。
进一步的,作为对图1所示实施例的细化及扩展,本发明实施例还提供了另一种计算指标的查询方法,如图2所示。
201、获取待查询的计算指标的标识或名称。
本步骤的实现方式与图1步骤101的实现方式相同,此处不再赘述。
202、根据计算指标的标识或名称,从指标表中查询计算指标对应的计算方式。
其中,本实施例中的计算指标主要是指对应的多个基础指标中至少有一个基础指标的计算方式与其他基础指标的计算方式不同的计算指标。指标表是预先建立的,指标表中包含所有指标(包括计算指标以及基础指标)对应的至少以下字段信息:指标的名称、指标的标识、指标的计算方式、指标对应的数值、指标所关联的维度、指标所关联的原始数据表、指标的描述等。需要说明的是,其中指标所关联的维度是得到指标所需要的数据对应的维度,通常所有数据按照不同的维度进行分类,指标所关联的维度用维度的标识表示,指标的计算方式与图1步骤102中定义的相同,不再赘述。指标关联的原始数据表是指在进行指标的查询时所需要用到的原始数据表,指标的描述是一些用于对指标进行解释的语言。另外,对于一些基础指标可能不需要计算,没有对应的计算方式,而直接是一个具体的数值,因此指标表中有指标对应的数值的字段信息用来存放指标对应的数值。
指标表中各字段信息都是一一对应的关系,因此可以根据计算指标的标识或名称,从指标表中查询到计算指标对应的计算方式。
203、获取计算方式中包含的多个基础指标,并将多个基础指标确定为待查询子指标。
本步骤的实现方式图1步骤103的实现方式相同,此处不再赘述。
204、确定每个基础指标对应的数值或计算方式。
具体的,由步骤203可知计算指标的计算方式中包含多个用于计算计算指标的基础指标,且基础指标是由基础指标的标识或名称表示的。因此,可以根据确定多个基础指标的标识或者名称从指标表中查询到每个基础指标对应的数值或者计算方式。
205、根据确定的每个基础指标的数值或者计算方式构造每个待查询子指标对应的子查询语句。
具体的构造每个待查询子指标对应的子查询语句的过程与现有的构造某一对象的查询语句的方式是相同的。采用的不同的查询语言可能构造出的子查询语句是不同的。具体的,若采用的是SQL结构化查询语言,本实施例给出一种构造的方式,如下:对于有对应的计算方式的基础指标,具体的构造过程可以为:按照将基础指标对应的计算方式作为查询的对象、将与基础指标所关联的原始数据表作为查询的范围、将与基础指标所关联的维度作为查询的条件的构造原则构造基础指标的查询语句即待查询子指标的子查询语句;对于没有计算方式而是对应的数值的基础指标,具体的构造过程可以为:按照将基础指标作为查询的对象、将指标表作为查询的范围以及将指标表中的指标对应的数值字段作为查询的条件的构造原则构造基础指标的查询语句即待查询子指标的子查询语句。
对于上述给出的一种构造子查询语句的方式,下面给出具体的示例进行说明,假设基础指标为总天数dayCount,对应的计算方式为count(distinct day)即统计天数,所关联的原始数据表为vod_day_and_hour_view,所关联的维度为filter1 and filter2,则最终得到的dayCount对应的子查询语句为:
select count(distinct day)as dayCount from vod_day_and_hour_viewwhere filter1 and filter2
若dayCount没有对应的计算方式,而是对应的数值,则最终得到的dayCount对应的子查询语句为:
select dayCount from target where target value
其中target表示指标表,target value表示指标表中指标对应的数值的字段。
206、将基础指标查询信息存储到预设语句查询字典和预设名称查询字典中。
其中,基础指标查询信息包括基础指标的标识、基础指标(待查询子指标)对应的子查询语句以及子查询语句的名称。具体的存储过程为:
将基础指标的标识存储到预设语句查询字典的键key中,将子查询语句存储到预设语句查询字典的值value中;
将基础指标的标识存储到预设名称查询字典的键key中,将子查询语句的名称存储到预设名称查询字典的值value中。
其中,子查询语句的名称是自定义的,具体的子查询语句的名称可以通过with as语句进行定义,比如将上述步骤205中dayCount对应的子查询语句定义为days,则对应的子查询语句的名称定义可以为:
with days as(select count(distinct day)as dayCount from vod_day_and_hour_view where filter1 and filter2
207、根据计算指标的计算方式,确定计算方式包含的基础指标之间的关联关系。
由于计算指标是多个基础指标通过计算得到的,具体的多个基础指标之间的关联关系可以从计算指标的计算方式中获取。本实施例中,关联关系主要是指多个基础指标在进行计算得到计算指标时之间的计算关系,计算关系包括加、减、乘、除、平方等运算关系。
208、根据关联关系将预设语句查询字典和预设名称查询字典中的基础指标查询信息进行拼接,得到待查询的计算指标的查询语句。
具体的拼接方法为:先获取预设语句查询字典以及预设名称查询字典;然后根据确定的计算指标中的基础指标的标识从预设语句查询字典中获取与基础指标对应的子查询语句以及从预设名称查询字典中获取与基础指标对应的子查询语句的名称;然后根据上述确定的计算指标的计算方式中包含的基础基础指标之间的关联关系以及查询语句的构造原则将基础指标的子查询语句以及子查询语句的名称拼接得到待查询的计算指标的查询语句。
对于上述拼接的方法,不同的查询语言对应的实现方式是不同的,本实施例给出一种查询语言对应的构造查询语句的实现方式,比如对于结构化查询语言SQL,其实现方式可以为:按照将计算指标对应的计算方式作为查询的对象、将计算指标的计算方式中包含的基础指标对应的子查询语句的名称作为查询范围的原则构造查询语句,最终得到待查询的计算指标的查询语句。例如:某一待查询的计算指标为P,对应的计算方式为A/B-f,其中A、B、f分别为一个基础指标,其中基础指标A的计算方式为a+b+c,基础指标B的计算方式为d+e,基础指标f没有计算方式,从预设语句查询字典以及预设名称查询字典中获取的基础指标A、B、f对应的子查询语句为子查询语句1、子查询语句2、子查询语句3,子查询语句1、子查询语句2、子查询语句3分别对应的子查询语句名称为S1、S2、S3,则拼接后得到的待查询的计算指标的查询语句为:
子查询语句1
子查询语句2
子查询语句3
Select((a+b+c)/(d+e)-f)as P from S1 and S2 and S3
另外,在实际的应用的过程中,进行计算指标的查询时,查询的数据范围包括多个维度,而与计算指标关联的维度可能是其中某几个维度,对于这种情况,在查询的过程中还需要加入维度查询条件,具体的过程为:首先,接收维度过滤条件,维度过滤条件中至少携带有计算指标关联的维度;然后,从维度表中查找与计算指标关联的维度相匹配的维度,并将查找到的维度作为待查询的计算指标的查询维度。然后将查找到的计算指标的查询维度作为查询条件增加到上述构造的查询语句中得到最终的计算指标的查询语句。
其中维度表是预先建立的用于存储所有指标所关联的维度的表,其中维度表至少包含以下字段:维度的名称、维度的标识、维度所关联的原始数据表、维度的描述等。维度的标识或者名称是唯一标识维度的标识,维度的标识可以为全局唯一标识符Guid,也可以是自定义的其他标识符,维度的名称通常是用户根据维度的实际含义自定义的,维度表中各字段信息都是一一对应的关系。
209、根据查询语句进行计算指标的查询。
由步骤208得到待查询的计算指标的查询语句后,根据该查询语句进行计算指标的查询,以得到最终的查询结果。
另外,为了后续查询的方便,可以将得到的计算指标的查询语句存储到预设语句查询字典中,若再次对相同的计算指标进行查询时,可以直接从预设语句查询字典中获取对应的查询语句,用获取到的查询语句进行计算指标的查询。
为了进一步的提高查询的效率,对于实施步骤205之前,本实施例将计算指标的计算方式中包含的基础指标先进行分组,得到不同的子指标组,具体分组是按照同一子指标组中所有基础指标所关联的维度以及所关联的原始数据表都相同的原则进行的。将基础指标进行分组后,一个子指标组构造一个子查询语句,相比于一个基础指标构造一个子查询语句更加的简单,因此可以在一定程度上提高查询的效率。
具体的构造子指标组对应的子查询语句,本实施例中给出一种使用SQL结构化查询语言进行构造的实现方式:具体的按照将一个子指标组中所有基础指标的计算方式作为查询的对象、将与一个子指标组中所有基础指标所关联的原始数据表作为查询的范围、将一个子指标组中所有基础指标所关联的维度作为查询的条件的原则构造的。关于子指标组对应的子查询语句给出具体的示例进行说明,如下所示:
select
计算方式1,
计算方式2,
计算方式3,
...
计算方式n,
from所关联的原始数据表(统一的查询范围)
where所关联的维度组成的统一的过滤条件
上述子指标组对应的子查询语句的形式中,每个计算方式分别是子指标组中每个基础指标的计算方式。
在得到子指标组对应的子查询语句后,同样的需要将其存储到预设语句查询字典中,并将其对应的名称存储到预设名称查询字典中。对应的,上述将计算指标的计算方式中基础指标查询信息进行拼接变为将子指标组查询信息进行拼接,具体的拼接方式与步骤208中的实现方式类似,只需要将基础指标的子查询语句替换为子指标组的子查询语句即可,此处不再赘述。
另外,需要说明的在实际的应用中,实际查询的过程中,为了确定获取到的待查询指标为计算指标,还可以对计算指标与基础指标进行区别,具体的可以通过在指标表中增加一个字段,即是否为计算指标的字段,这样就可以根据指标表中的该字段确定是否为计算指标。给出一种定义该字段的方式,比如可以定义指标为计算指标时,对应的该字段的值为1,不是计算指标时,对应的该字段的值为0。在实际的应用中,该字段也可以定义为其他的值。
进一步的,作为对上述图1和图2所示方法的实现,本发明实施例另一实施例还提供了一种计算指标的查询装置,用于对上述图1和图2所示的方法进行实现。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。如图3所示,该装置包括:第一获取单元301、第一确定单元302、第二获取单元303、构造单元304、拼接单元305以及第一查询单元306。
第一获取单元301,用于获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;
在进行计算指标的查询时,外部会输入计算指标的标识或名称,因此在通过外部接收外部输入能够获取计算指标的标识或名称。计算指标的标识或者名称是唯一标识计算指标的标识,计算指标的标识可以为全局唯一标识符Guid,也可以是自定义的其他标识符,计算指标的名称通常是根据计算指标的实际含义自定义的。获取计算指标的标识和名称是为了确定本次查询的对象。另外,需要说明的是,其中计算指标为多个基础指标通过计算得到的指标。比如,在进行电视节目数据分析的过程中,计算指标为每户平均播放时长,每户平均播放时长能够根据总的播放时长以及总的用户数计算得到,因此该计算指标对应的基础指标为总的播放时长以及总的用户数。
第一确定单元302,用于根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;
每个计算指标都有自身对应的计算方式,计算指标的计算方式也可以称为计算公式,是由计算指标本身的定义决定的。计算指标的标识、名称与计算指标的计算方式是一一对应的,因此可以根据计算指标的标识或名称,确定计算指标对应的计算方式。另外,由于计算指标为多个基础指标通过计算得到,计算指标的计算方式中包含多个用于计算计算指标的基础指标。具体的计算指标的计算方式中包含的基础指标是由基础指标的标识或名称表示的。
第二获取单元303,用于获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;
由第一确定单元302可知,计算指标的计算方式中包含多个用于计算计算指标的基础指标,且基础指标是由基础指标的标识或名称表示的,因此可以从计算指标的计算方式中根据标识或名称获取到与标识或名称对应的多个基础指标,并将获取到的多个基础指标确定为待查询子指标。
构造单元304,用于构造每个所述待查询子指标对应的子查询语句;
构造每个待查询子指标对应的子查询语句是为后续得到计算指标的查询语句做基础准备的。计算指标是由多个基础指标通过计算得到的,因此想要查询计算指标,首先需要获取多个基础指标,而获取多个基础指标需要通过每个基础指标的查询语句即待查询子指标对应的子查询语句查询获取,因此要得到计算指标的查询语句必须首先构造待查询子指标对应的子查询语句。
具体构造子查询语句时对于不同的查询语言需要依据不同查询语言的构造的原则进行,不同的的查询语言的构造原则是不同的。比如,对于结构化查询语言SQL,需要依据SQL的构造原则进行构造。
拼接单元305,用于拼接所述子查询语句得到所述待查询的计算指标的查询语句;
第一查询单元306,用于根据所述查询语句进行所述计算指标的查询。
将由构造单元304中得到的所有待查询子指标对应的子查询语句进行拼接形成一个查询语句即待查询的计算指标的查询语句,然后使用该查询语句进行计算指标的查询得到查询结果,这样就不需要分别通过每个子查询语句得到子查询的结果后,再使用子查询结果进行二次计算得到最终的查询结果,所以一定程度上提高了计算指标查询的效率。
所述计算指标对应的计算方式存储于预先建立的指标表中,所述第一确定单元302还用于:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
指标表中包含所有指标(包括计算指标以及基础指标)对应的至少以下字段信息:指标的名称、指标的标识、指标的计算方式、指标对应的数值、指标所关联的维度、指标所关联的原始数据表、指标的描述等。指标表中各字段信息都是一一对应的关系,因此可以根据计算指标的标识或名称,从指标表中查询到计算指标对应的计算方式。
如图4所示,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,所述装置还包括:
第二确定单元307,用于在获取所述计算方式中包含的多个基础指标之后,确定每个所述基础指标对应的数值或计算方式;
第二查询单元308,用于若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
根据确定多个基础指标的标识或者名称从指标表中查询到每个基础指标对应的数值或者计算方式。
第三查询单元309,用于若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
根据确定多个基础指标的标识或者名称从指标表中查询到每个基础指标对应的数值或者计算方式。
所述构造单元304,包括:
第一获取模块3041,用于获取所述基础指标对应的计算方式或所述基础指标对应的数值;
构造模块3042,用于根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
如图4所示,所述装置还包括:
第一存储单元310,用于在构造所述子查询语句之后将所述基础指标的标识存储到预设语句查询字典的键中,将所述子查询语句存储到所述预设语句查询字典的值中;
第二存储单元311,用于将所述基础指标的标识存储到预设名称查询字典的键中,将所述子查询语句的名称存储到所述预设名称查询字典的值中,所述预设语句查询字典以及所述预设名称查询字典为预先建立的用于存储基础指标查询信息的字典。
其中,基础指标查询信息包括基础指标的标识、基础指标(待查询子指标)对应的子查询语句以及子查询语句的名称。子查询语句的名称是自定义的,具体的子查询语句的名称可以通过with as语句进行定义。
如图4所示,所述拼接单元305,包括:
第二获取模块3051,用于获取所述预设语句查询字典和所述预设名称查询字典;
确定模块3052,用于根据所述计算指标的计算方式,确定所述计算方式包含的基础指标之间的关联关系;
由于计算指标是多个基础指标通过计算得到的,具体的多个基础指标之间的关联关系可以从计算指标的计算方式中获取。本实施例中,关联关系主要是指多个基础指标在进行计算得到计算指标时之间的计算关系,计算关系包括加、减、乘、除、平方等运算关系。
拼接模块3053,用于根据所述关联关系将所述预设语句查询字典和所述预设名称查询字典中的基础指标查询信息进行拼接,得到所述待查询的计算指标的查询语句。
具体的拼接方法为:先获取预设语句查询字典以及预设名称查询字典;然后根据确定的计算指标中的基础指标的标识从预设语句查询字典中获取与基础指标对应的子查询语句以及从预设名称查询字典中获取与基础指标对应的子查询语句的名称;然后根据上述确定的计算指标的计算方式中包含的基础基础指标之间的关联关系以及查询语句的构造原则将基础指标的子查询语句以及子查询语句的名称拼接得到待查询的计算指标的查询语句。
如图4所示,所述计算指标与多个维度相关联,所述多个维度存储于预先建立的维度表中,所述装置还包括:
接收单元312,用于在根据所述查询语句进行所述计算指标的查询之前,接收维度过滤条件,所述维度过滤条件中至少携带有所述计算指标关联的维度;
查找单元313,用于从所述维度表中查找与所述计算指标关联的维度相匹配的维度,并将查找到的维度作为所述待查询的计算指标的查询维度。
在实际的应用的过程中,进行计算指标的查询时,查询的数据范围包括多个维度,而与计算指标关联的维度可能是其中某几个维度,对于这种情况,在查询的过程中还需要加入维度查询条件,具体的过程为:首先,接收维度过滤条件,维度过滤条件中至少携带有计算指标关联的维度;然后,从维度表中查找与计算指标关联的维度相匹配的维度,并将查找到的维度作为待查询的计算指标的查询维度。然后将查找到的计算指标的查询维度作为查询条件增加到上述构造的查询语句中得到最终的计算指标的查询语句。
其中维度表是预先建立的用于存储所有指标所关联的维度的表,其中维度表至少包含以下字段:维度的名称、维度的标识、维度所关联的原始数据表、维度的描述等。维度的标识或者名称是唯一标识维度的标识,维度的标识可以为全局唯一标识符Guid,也可以是自定义的其他标识符,维度的名称通常是用户根据维度的实际含义自定义的,维度表中各字段信息都是一一对应的关系。
本发明实施例提供的计算指标的查询装置,在进行计算指标的查询时,能够将计算指标中涉及的多个基础指标定义为待查询子指标,然后分别构造每个待查询子指标的子查询语句,最后将得到的子查询语句进行拼接后得到计算指标的查询语句,并根据该查询语句进行计算指标的查询。可以看到,在进行计算指标的查询时,不需要先分别对涉及的多个基础指标进行查询得到查询结果后再进行二次计算来获取所要查询的计算指标的查询结果,而是直接通过拼接的查询语句就可以得到计算指标的查询结果。相比于现有的计算指标的查询方式更加的简便,因此能够提高计算指标的查询效率。
所述计算指标的查询装置包括处理器和存储器,上述第一获取单元301、第一确定单元302、第二获取单元303、构造单元304、拼接单元305以及第一查询单元306等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来提高用户需求分析结果的准确性。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述计算指标的查询方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述计算指标的查询方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;构造每个所述待查询子指标对应的子查询语句;拼接所述子查询语句得到所述待查询的计算指标的查询语句;根据所述查询语句进行所述计算指标的查询。
进一步的,可选的,所述计算指标对应的计算方式存储于预先建立的指标表中,根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,包括:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
进一步的,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,在获取所述计算方式中包含的多个基础指标之后,所述方法还包括:
确定每个所述基础指标对应的数值或计算方式;
若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
所述构造每个所述待查询子指标对应的子查询语句,包括:
获取所述基础指标对应的计算方式或所述基础指标对应的数值;
根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
进一步的,在构造所述子查询语句之后,所述方法还包括:
将所述基础指标的标识存储到预设语句查询字典的键中,将所述子查询语句存储到所述预设语句查询字典的值中;
将所述基础指标的标识存储到预设名称查询字典的键中,将所述子查询语句的名称存储到所述预设名称查询字典的值中,所述预设语句查询字典以及所述预设名称查询字典为预先建立的用于存储基础指标查询信息的字典;
所述拼接所述子查询语句得到所述待查询的计算指标的查询语句,包括:
获取所述预设语句查询字典和所述预设名称查询字典;
根据所述计算指标的计算方式,确定所述计算方式包含的基础指标之间的关联关系;
根据所述关联关系将所述预设语句查询字典和所述预设名称查询字典中的基础指标查询信息进行拼接,得到所述待查询的计算指标的查询语句。
进一步的,所述计算指标与多个维度相关联,所述多个维度存储于预先建立的维度表中,在根据所述查询语句进行所述计算指标的查询之前,所述方法还包括:
接收维度过滤条件,所述维度过滤条件中至少携带有所述计算指标关联的维度;
从所述维度表中查找与所述计算指标关联的维度相匹配的维度,并将查找到的维度作为所述待查询的计算指标的查询维度。
本发明实施例中的设备可以是服务器、PC、PAD、手机等。
本发明实施例还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;构造每个所述待查询子指标对应的子查询语句;拼接所述子查询语句得到所述待查询的计算指标的查询语句;根据所述查询语句进行所述计算指标的查询。
进一步的,可选的,所述计算指标对应的计算方式存储于预先建立的指标表中,根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,包括:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
进一步的,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,在获取所述计算方式中包含的多个基础指标之后,所述方法还包括:
确定每个所述基础指标对应的数值或计算方式;
若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
所述构造每个所述待查询子指标对应的子查询语句,包括:
获取所述基础指标对应的计算方式或所述基础指标对应的数值;
根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
进一步的,在构造所述子查询语句之后,所述方法还包括:
将所述基础指标的标识存储到预设语句查询字典的键中,将所述子查询语句存储到所述预设语句查询字典的值中;
将所述基础指标的标识存储到预设名称查询字典的键中,将所述子查询语句的名称存储到所述预设名称查询字典的值中,所述预设语句查询字典以及所述预设名称查询字典为预先建立的用于存储基础指标查询信息的字典;
所述拼接所述子查询语句得到所述待查询的计算指标的查询语句,包括:
获取所述预设语句查询字典和所述预设名称查询字典;
根据所述计算指标的计算方式,确定所述计算方式包含的基础指标之间的关联关系;
根据所述关联关系将所述预设语句查询字典和所述预设名称查询字典中的基础指标查询信息进行拼接,得到所述待查询的计算指标的查询语句。
进一步的,所述计算指标与多个维度相关联,所述多个维度存储于预先建立的维度表中,在根据所述查询语句进行所述计算指标的查询之前,所述方法还包括:
接收维度过滤条件,所述维度过滤条件中至少携带有所述计算指标关联的维度;
从所述维度表中查找与所述计算指标关联的维度相匹配的维度,并将查找到的维度作为所述待查询的计算指标的查询维度。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种计算指标的查询方法,其特征在于,所述方法包括:
获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;
根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;
获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;
构造每个所述待查询子指标对应的子查询语句;
拼接所述子查询语句得到所述待查询的计算指标的查询语句;
根据所述查询语句进行所述计算指标的查询。
2.根据权利要求1所述的方法,其特征在于,所述计算指标对应的计算方式存储于预先建立的指标表中,根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,包括:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,在获取所述计算方式中包含的多个基础指标之后,所述方法还包括:
确定每个所述基础指标对应的数值或计算方式;
若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
所述构造每个所述待查询子指标对应的子查询语句,包括:
获取所述基础指标对应的计算方式或所述基础指标对应的数值;
根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
4.根据权利要求3所述的方法,其特征在于,在构造所述子查询语句之后,所述方法还包括:
将所述基础指标的标识存储到预设语句查询字典的键中,将所述子查询语句存储到所述预设语句查询字典的值中;
将所述基础指标的标识存储到预设名称查询字典的键中,将所述子查询语句的名称存储到所述预设名称查询字典的值中,所述预设语句查询字典以及所述预设名称查询字典为预先建立的用于存储基础指标查询信息的字典;
所述拼接所述子查询语句得到所述待查询的计算指标的查询语句,包括:
获取所述预设语句查询字典和所述预设名称查询字典;
根据所述计算指标的计算方式,确定所述计算方式包含的基础指标之间的关联关系;
根据所述关联关系将所述预设语句查询字典和所述预设名称查询字典中的基础指标查询信息进行拼接,得到所述待查询的计算指标的查询语句。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述计算指标与多个维度相关联,所述多个维度存储于预先建立的维度表中,在根据所述查询语句进行所述计算指标的查询之前,所述方法还包括:
接收维度过滤条件,所述维度过滤条件中至少携带有所述计算指标关联的维度;
从所述维度表中查找与所述计算指标关联的维度相匹配的维度,并将查找到的维度作为所述待查询的计算指标的查询维度。
6.一种计算指标的查询装置,其特征在于,所述装置包括:
第一获取单元,用于获取待查询的计算指标的标识或名称,所述计算指标为多个基础指标通过计算得到的指标;
第一确定单元,用于根据所述计算指标的标识或名称,确定所述计算指标对应的计算方式,所述计算方式中包含多个用于计算所述计算指标的基础指标;
第二获取单元,用于获取所述计算方式中包含的多个基础指标,并将所述多个基础指标确定为待查询子指标;
构造单元,用于构造每个所述待查询子指标对应的子查询语句;
拼接单元,用于拼接所述子查询语句得到所述待查询的计算指标的查询语句;
第一查询单元,用于根据所述查询语句进行所述计算指标的查询。
7.根据权利要求6所述的装置,其特征在于,所述计算指标对应的计算方式存储于预先建立的指标表中,所述第一确定单元还用于:
根据所述计算指标的标识或名称,从所述指标表中查询所述计算指标对应的计算方式,其中,所述指标表中存储有多个计算指标的标识或名称与计算指标的计算方式之间的对应关系。
8.根据权利要求7所述的装置,其特征在于,所述指标表中还存储有多个基础指标的标识与所述基础指标的计算方式,或,多个基础指标的标识与所述基础指标的数值之间的对应关系,所述计算方式中包含的多个基础指标中至少一个基础指标的计算方式与其他基础指标的计算方式不同,所述装置还包括:
第二确定单元,用于在获取所述计算方式中包含的多个基础指标之后,确定每个所述基础指标对应的数值或计算方式;
第二查询单元,用于若所述基础指标对应的为数值,则从所述指标表中查询所述基础指标对应的数值;
第三查询单元,用于若所述基础指标对应的为计算方式,则从所述指标表中查询所述基础指标对应的计算方式;
所述构造单元,包括:
第一获取模块,用于获取所述基础指标对应的计算方式或所述基础指标对应的数值;
构造模块,用于根据所述基础指标对应的计算方式或所述基础指标对应的数值构造所述子查询语句。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求5中任意一项所述的计算指标的查询方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至权利要求5中任意一项所述的计算指标的查询方法。
CN201710786770.7A 2017-09-04 2017-09-04 计算指标的查询方法及装置 Pending CN110019385A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710786770.7A CN110019385A (zh) 2017-09-04 2017-09-04 计算指标的查询方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710786770.7A CN110019385A (zh) 2017-09-04 2017-09-04 计算指标的查询方法及装置

Publications (1)

Publication Number Publication Date
CN110019385A true CN110019385A (zh) 2019-07-16

Family

ID=67186189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710786770.7A Pending CN110019385A (zh) 2017-09-04 2017-09-04 计算指标的查询方法及装置

Country Status (1)

Country Link
CN (1) CN110019385A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111611301A (zh) * 2020-06-16 2020-09-01 武汉虹信通信技术有限责任公司 无线通信设备的kpi指标表示方法、计算方法及系统
CN112037070A (zh) * 2020-09-01 2020-12-04 中国银行股份有限公司 一种指标灵活配置方法和装置
CN113553340A (zh) * 2021-07-23 2021-10-26 咪咕文化科技有限公司 用户查询方法、装置、电子设备及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130198218A1 (en) * 2012-01-27 2013-08-01 Microsoft Corporation Database Table Partitioning Allowing Overlaps Used in Full Text Query
CN106201539A (zh) * 2016-07-18 2016-12-07 浪潮通用软件有限公司 一种在星型模型中实现会计科目动态计算的方法
CN106293891A (zh) * 2015-06-12 2017-01-04 交通银行股份有限公司 多维投资指标监督方法
CN106886557A (zh) * 2016-12-28 2017-06-23 北京元心科技有限公司 巡检评估模型自适应方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130198218A1 (en) * 2012-01-27 2013-08-01 Microsoft Corporation Database Table Partitioning Allowing Overlaps Used in Full Text Query
CN106293891A (zh) * 2015-06-12 2017-01-04 交通银行股份有限公司 多维投资指标监督方法
CN106201539A (zh) * 2016-07-18 2016-12-07 浪潮通用软件有限公司 一种在星型模型中实现会计科目动态计算的方法
CN106886557A (zh) * 2016-12-28 2017-06-23 北京元心科技有限公司 巡检评估模型自适应方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111611301A (zh) * 2020-06-16 2020-09-01 武汉虹信通信技术有限责任公司 无线通信设备的kpi指标表示方法、计算方法及系统
CN111611301B (zh) * 2020-06-16 2023-12-08 武汉虹信科技发展有限责任公司 无线通信设备的kpi指标表示方法、计算方法及系统
CN112037070A (zh) * 2020-09-01 2020-12-04 中国银行股份有限公司 一种指标灵活配置方法和装置
CN112037070B (zh) * 2020-09-01 2023-09-19 中国银行股份有限公司 一种指标灵活配置方法和装置
CN113553340A (zh) * 2021-07-23 2021-10-26 咪咕文化科技有限公司 用户查询方法、装置、电子设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN109960653A (zh) 回归测试方法、装置、设备和存储介质
CN110413634A (zh) 数据查询方法、系统、装置及计算机可读存储介质
CN108334515A (zh) 一种处理崩溃文件中堆栈地址的方法、装置及系统
CN110019385A (zh) 计算指标的查询方法及装置
CN110046278B (zh) 视频分类方法、装置、终端设备及存储介质
CN108268289A (zh) web应用的参数配置方法、装置及系统
CN110019298A (zh) 数据处理方法和装置
CN109583921A (zh) 广告预算获取方法、装置、存储介质及处理器
CN106648839A (zh) 数据处理的方法和装置
CN110069488A (zh) 一种数据存储方法、数据读取方法及其装置
CN106294700A (zh) 一种日志的存储与读取方法及装置
CN110069453A (zh) 运维数据处理方法和装置
CN111125157B (zh) 查询数据的处理方法、装置、存储介质及处理器
CN111125087B (zh) 数据的存储方法及装置
CN110020016A (zh) 数据可视化展示方法和装置
CN110083602B (zh) 一种基于hive表的数据存储及数据处理的方法及装置
CN110020071A (zh) 竞品车型的确定方法及装置
CN110895544B (zh) 一种接口数据处理方法、装置、系统及存储介质
CN110019357A (zh) 数据库查询脚本生成方法及装置
CN110019544A (zh) 数据查询方法及系统
CN105740345B (zh) 一种信息推送方法及服务端装置
CN109561126A (zh) 一种数据同步方法和装置、存储介质、处理器
CN114968028A (zh) 基于用户行为分析动态改变菜单布局的方法、设备及介质
CN110020274A (zh) 混合应用在浏览器环境下的页面返回方法和装置
CN104572649B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190716