CN114416772A - 一种数据查询方法、装置、电子设备以及存储介质 - Google Patents

一种数据查询方法、装置、电子设备以及存储介质 Download PDF

Info

Publication number
CN114416772A
CN114416772A CN202111630201.6A CN202111630201A CN114416772A CN 114416772 A CN114416772 A CN 114416772A CN 202111630201 A CN202111630201 A CN 202111630201A CN 114416772 A CN114416772 A CN 114416772A
Authority
CN
China
Prior art keywords
output field
query
data
determining
field
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
CN202111630201.6A
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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111630201.6A priority Critical patent/CN114416772A/zh
Publication of CN114416772A publication Critical patent/CN114416772A/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/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/2455Query execution

Landscapes

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

Abstract

本公开提供了一种数据查询方法、装置、电子设备以及存储介质。本公开涉及计算机技术领域,尤其涉及数据查询技术领域。具体实现方案为:确定待查询的数据集,所述待查询的数据集包括数据库或表;根据预先配置的数据模型,确定所述待查询的数据集中包含的多个字段;显示所述多个字段,响应于针对所述多个字段的选择指令,从所述多个字段中确定至少一个输出字段;响应于针对所述至少一个输出字段中的各个输出字段的设置指令,确定所述各个输出字段是否对应聚合逻辑;根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑。本公开能够实现自动化的数据查询。

Description

一种数据查询方法、装置、电子设备以及存储介质
技术领域
本公开涉及计算机技术领域,尤其涉及数据查询技术领域。
背景技术
数据查询是数据平台产品的一个重要组成部分。目前的数据查询一般由专业的技术人员通过编写后端结构化查询语言(SQL,Structure Query Language),然后将SQL语句在特定的数据库环境下执行来实现。这种方式对专业程度要求较高,普通用户难以实现。
发明内容
本公开提供了一种数据查询方法、装置、电子设备以及存储介质。
根据本公开的一方面,提供了一种数据查询方法,包括:
确定待查询的数据集,该待查询的数据集包括数据库或表;
根据预先配置的数据模型,确定该待查询的数据集中包含的多个字段;
显示该多个字段,响应于针对该多个字段的选择指令,从该多个字段中确定至少一个输出字段;
响应于针对该至少一个输出字段中的各个输出字段的设置指令,确定该各个输出字段是否对应聚合逻辑;
根据该各个输出字段是否对应聚合逻辑,确定查询逻辑。
根据本公开的另一方面,提供了一种数据查询装置,包括:
数据集确定模块,用于确定待查询的数据集,该待查询的数据集包括数据库或表;
字段确定模块,用于根据预先配置的数据模型,确定该待查询的数据集中包含的多个字段;
显示模块,用于显示该多个字段,响应于针对该多个字段的选择指令,从该多个字段中确定至少一个输出字段;
指令设置模块,用于响应于针对该至少一个输出字段中的各个输出字段的设置指令,确定该各个输出字段是否对应聚合逻辑;
逻辑确定模块,用于根据该各个输出字段是否对应聚合逻辑,确定查询逻辑。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任一方面所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据本公开任一方面所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据本公开任一方面所述的方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开一实施例的数据查询方法实现流程图;
图2是根据本公开一实施方式的应用场景示意图;
图3是根据本公开一种实施方式的数据模型配置页面示意图;
图4是根据本公开一种实施方式的可视化操作页面示意图;
图5是根据本公开另一实施例的数据查询方法实现流程图;
图6是根据本公开一实施例的数据查询方法中可视化操作页面中数据初始化的实现流程图;
图7是根据本公开另一实施例的数据查询方法实现流程图;
图8是根据本公开一实施例的数据查询装置的结构示意图;
图9是根据本公开另一实施例的数据查询装置的结构示意图;
图10是根据本公开另一实施例的数据查询装置的结构示意图;
图11是根据本公开另一实施例的数据查询装置的结构示意图;
图12是根据本公开另一实施例的数据查询装置的结构示意图;
图13是根据本公开另一实施例的数据查询装置的结构示意图;
图14是用来实现本公开实施例方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开实施方式提出一种数据查询方法,这种查询方式提供可视化的查询逻辑生成方式,对专业程度要求低,用户可以在可视化界面上输入相关指令,从而根据用户指令自动生成查询逻辑。
本公开实施例中,用户可以是专业的技术人员,也可以是没有数据库专业知识的普通用户。本公开实施例中,涉及到数据源、数据库、表、字段等数据库技术中的概念。简单地说,数据源可以指用于提供数据的器件或媒体,一个数据源中可设置多个数据库,每个数据库中可以包括多个表,每个表中可以包括多个字段。其中,数据库和表均可称为数据集。字段可以包括字段名称以及其他相关信息,如字段的中文别名、数据类型、过滤条件的控件类型、字段类型等。数据源的属性信息可以包括该数据源中设置的所有数据库的名称、每个数据库中表的名称、以及每个表中各字段的字段名称及其他相关信息。其中,字段类型可以包括维度、度量、未知三种类型。例如,数据类型为字符串、日期等时,对应的字段类型默认为“维度”类型;数据类型为整型、浮点型等时,对应的字段类型默认为“度量”类型;对于关键字,如标识(ID)等,其对应的字段类型可以为“未知”类型。
本公开实施方式提出一种数据查询方法,图1是根据本公开一实施例的数据查询方法实现流程图,包括:
S110:确定待查询的数据集,所述待查询的数据集包括数据库或表;
S120:根据预先配置的数据模型,确定所述待查询的数据集中包含的多个字段;
S130:显示所述多个字段,响应于针对所述多个字段的选择指令,从所述多个字段中确定至少一个输出字段;
S140:响应于针对所述至少一个输出字段中的各个输出字段的设置指令,确定所述各个输出字段是否对应聚合逻辑;
S150:根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑。
根据上述查询逻辑,在接收到响应于查询语句生成指令的情况下,可以生成查询逻辑对应的查询语句。通过上述过程,本公开实施方式能够实现自动化的数据查询。
进一步地,可以将查询语句发送至待查询的数据集所对应的数据引擎,以供该数据引擎根据利用查询语句进行数据查询。
图2是本公开一实施方式的应用场景示意图。如图2所示,用户可以在终端设备210上输入相关指令,终端设备210将用户输入的相关指令发送至数据查询装置220。数据查询装置220根据终端设备210上传的用户指令确定查询逻辑、并进一步生成查询语句,之后将生成的查询语句发送至待查询的数据集所对应的数据引擎230。数据引擎230利用查询语句从数据集所对应的数据源240进行数据查询。
之后,数据引擎230将查询结果反馈至终端设备210或查询结果显示设备250,由终端设备210或查询结果显示设备250显示数据查询结果。或者,数据引擎230将查询结果反馈至数据查询装置220,数据查询装置220再将查询结果发送至终端设备210或查询结果显示设备250,由终端设备210或查询结果显示设备250显示数据查询结果。
上述查询语句可以指SQL查询语句,相应地,上述查询逻辑可以指能够生成SQL查询语句的查询逻辑。其中,查询逻辑中至少可以包括以下内容:
(1)条件查询,即从哪些数据库或表中输出符合何种条件的哪些字段。对应SQL查询语句中的“Select[字段名1,字段名2,…字段名N]from[表名1,表名2,…表名M]where[过滤条件1and/or过滤条件2,……]”。
(2)排序,即输出内容按照哪个或哪些字段排序。对应SQL查询语句中的“Order[字段名1,字段名2,…字段名L]”。
(3)输出条数的限制,对应SQL查询语句中的“Limit[输出条数]”。
(4)聚合函数或逻辑,主要用来进行纵向运算。对应SQL查询语句中的“Sum(字段名1)”,用于计算字段名1所在列的和;或对应SQL查询语句中的“Avg(字段名2)”,用于计算字段名2所在列的平均值;或对应SQL查询语句中的“Distinct Count(字段名3)”,用于基于字段名3进行去重求和计算。还可以对应其他表示聚合逻辑的SQL查询语句,在此不再穷举。
(5)输出内容按照哪个或哪些字段分组。对应SQL查询语句中的“Group by[字段名1,字段名2,…字段名H]”。
本公开实施方式提供可视化的数据查询方式,能够提供灵活的查询语句(如SQL语句)拼装能力,包括字段的自由输出、排序、支持聚合函数及对应的聚合逻辑,并且支持复杂的条件过滤。
为实现以上能力,用户可以通过终端设备在可视化界面中通过点击或拖拽等方式输入相关指令;根据用户输入的指令,本公开实施方式能够确定对应的查询逻辑,并利用确定出的查询逻辑生成查询语句。进一步地,本公开支持多表的多维聚合查询,用户可以确定多个待查询的数据集,并输入待查询数据集之间的连接关系;根据用户确定的多个待查询的数据集及待查询数据集之间的连接关系,可以实现从多个待查询的数据集中查询所需字段。
本公开为用户提供输入相关指令的可视化界面;用户仅需要在可视化界面中通过简单的点击或拖拽动作选取需要查询的字段及查询条件等相关信息,而无需了解相关的查询逻辑、查询语句的生成方式等专业知识,因此能够大大降低用户的操作难度。
本公开提供的可视化界面,可以至少采用以下两个页面来实现:
页面1——数据模型配置页面:
图3根据本公开一种实施方式的数据模型配置页面示意图。用户可以输入多个待配置的数据集的标识信息;这些待配置的数据集可以为数据库或表,相应地,这些待配置的数据集的标识信息可以包括数据库名、表名;用户还可以输入数据集的来源信息。在图3所示的数据模型配置页面中,用户可以输入这些待配置的数据集中的字段的名称(包括别名)、数据类型、字段类型和过滤条件的控件类型中的至少一项。其中,字段类型包括维度类型、度量类型和未知类型;例如,数据类型为字符串、日期等时,对应的字段类型一般为“维度”类型;数据类型为整型、浮点型等时,对应的字段类型一般为“度量”类型;对于关键字,如标识(ID)等,其对应的字段类型可以为“未知”类型。用户可以在数据模型配置页面的输入区域中通过输入或点击的方式输入前述信息,以图3为例,用户在数据模型配置页面的“参数名”所属的文本输入框中输入参数名“ctime”;在数据模型配置页面的“别名”所属的文本输入框中输入别名“日期”;在数据模型配置页面的“数据类型”所属的选项输入框中选择数据类型“datetime”,表示该数据类型为表示日期的数据;在数据模型配置页面的“控件类型”所属的选项输入框中选择控件类型“datetime”,表示该过滤条件的控件类型为日期类数据的相关控件;由于用户输入的数据类型日期类型,因此在字段类型的选项输入框默认显示度量类型,用户可以直接点击该度量类型进行选择,也可以点击下拉菜单,点击其他的类型作为该字段的字段类型。
通过前述点击和输入操作,用户输入多个待配置的数据集的标识信息,还包含各个待配置的数据集中的字段的名称、数据类型、字段类型和过滤条件的控件类型中的至少一项;其中,字段类型包括维度类型、度量类型和未知类型;
响应于该信息输入指令,可以配置数据模型,该数据模型中记录信息输入指令中所含的信息。
在上述数据模型的配置完成之后,可以根据数据模型在页面2(即可视化操作页面)中首先完成数据初始化,从而便于用户输入相关指令。之后根据用户指令确定用户选择的输出字段等设置。以下具体介绍页面2:
页面2——可视化操作页面
图4是根据本公开一种实施方式的可视化操作页面示意图。如图4所示,可视化操作页面至少包括4个区域,用户在各个区域中输入相关指令,响应于用户输入的指令,能够确定输出字段、输出字段是否对应聚合逻辑、输出内容的过滤条件、输出内容的排序方式、最大条数等相关信息。上述4个区域具体如下:
区域1:
区域1用于供用户选择待查询的数据集。响应于用户在区域1输入的信息,能够实现本公开实施方式提出的数据查询方法中确定待查询的数据集的过程,对应上述实施例中的步骤S110。
本公开实施方式可以利用区域1确定待查询的数据集,在一些实施方式中,可以包括如下步骤:
根据预先配置的数据模型,确定多个待配置的数据集的标识信息;
显示上述多个待配置的数据集的标识信息;
响应于对多个待配置的数据集的标识信息中的任意标识信息的选择指令,确定至少两个待查询的数据集。
如图4中的区域1所示,根据上述数据模型中记录的信息,区域1中可以显示数据模型中所包含的信息,如多个待配置的数据集的标识信息。如图4区域1中,显示多个待配置的数据集的标识信息包括多个表名,如学生表、测试表、成绩表。用户通过点击的方式输入对任意表名的选择指令,如用户点击区域1中显示的学生表和测试表;根据该选择指令,能够确定用户选择的待查询的数据集包括学生表和测试表,并最终在区域1中显示用户选择的学生表和测试表。
本公开实施方式支持用户选择多个待查询的数据集,并实现基于多个待查询的数据集的多维聚合查询,即可以查询多个待查询的数据集中包含的字段信息,而不仅限于单一数据集中的字段信息。
另外,在区域1中,本公开实施方式还可以支持用户对多个待查询的数据集的拖拽操作,从而输入待查询的数据集之间的连接关系。
例如,在一些实施方式中,在用户选定至少两个待查询的数据集之后,进一步包括:
显示所述至少两个待查询的数据集中,各个待查询的数据集的标识信息;
响应于对任意待查询的数据集的标识信息的拖拽指令,确定所述至少两个待查询的数据集中,任意待查询的数据集之间的连接关系。
上述连接关系可以包括内连接、外连接、左连接等。其中,内连接也叫连接,还可以被称为普通连接或者自然连接,内连接是从结果表中删除与其他被连接表中没有匹配行的所有行。外连接也可以称为全外连接,可以指完整返回左表和右表中的所有行;当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。左连接也可以称为左外连接,可以指将返回右表的所有行;如果左表的某行在右表中没有匹配行,则将为右表返回空值。右外连接,可以指返回右表的所有行;如果右表的某行在左表中没有匹配行,则将为左表返回空值。
如图4所示,响应于用户的拖拽指令,确定学生表和测试表的连接关系为左连接,并显示相应的图标。
上述连接关系及图4中所示的连接关系图标仅为示例,本公开实施方式不限制待查询的数据集之间的连接关系,并且不限制各种连接关系的视图。并且,本公开实施方式还支持多个待查询的数据集中任意两个待查询的数据集之间的连接关系的设置,用户可以在图4的区域1中采用拖拽的方式输入任意两个待查询的数据集之间的连接关系。
区域二:
区域2用于供用户选择输出字段。响应于用户在区域2输入的信息,能够实现本公开实施方式提出的数据查询方法中确定输出字段、并确定各个输出字段是否对应聚合逻辑的过程,对应上述实施例中的步骤S120至S140。
结合图4,本公开实施方式可以利用区域2确定输出字段,具体包括:
根据预先配置的数据模型,确定待查询的数据集中包含的多个字段,显示所述多个字段。在图4区域2中,待查询的数据集包括学生表和测试表,根据预先配置的数据模型中包含的待配置的数据集中的字段相关信息,能够确定出待配置的数据集中包含的字段,在区域2中显示这些字段。例如,图4区域2中显示学生表包含的字段包括日期、ID、学生名、年龄、性别、学分;测试表包含的字段包括用户id、课程名、课程成绩。
用户可以在区域2显示的字段上进行点击,该点击操作用户表示用户对该字段的选择指令,选择指令表示将该字段选择为输出字段。响应于针对这些字段的选择指令,从区域2中显示的多个字段中确定至少一个输出字段。例如,图4区域2中,用户在学生表包含的字段“ID”、“学生名”上进行点击,在测试表包含的字段“课程名”和“课程成绩”上进行点击,从而输入选择指令;根据该选择指令,可以确定用户将“学生名”、“课程名”“课程成绩”、“ID”选择作为输出字段,在一些实施方式中,可以在区域2的固定区域(如图4中为区域2的上半部分)显示这些输出字段的名称。
此外,在区域2的上述固定区域(如图4中为区域2的上半部分)中,还提供用户对输出字段的设置指令的输入;响应于针对任意输出字段的设置指令,可以确定该输出字段是否对应聚合逻辑。
在一些实施方式中,上述确定各个输出字段是否对应聚合逻辑的方式包括;
针对至少一个输出字段中的任意输出字段,显示该任意输出字段的多种统计方式;
响应于对该多种统计方式中的一种统计方式的选择指令,确定任意输出字段对应的计算函数;
根据该任意输出字段对应的计算函数,确定所述任意输出字段是否对应聚合逻辑。
在一些可能的实施方式中,上述任意输出字段的多种统计方式包括:按照原始值统计、一般计数统计、去重计数统计、统计平均值、求和统计、统计最大值、统计最小值及统计中位数。可选地,在上述任意输出字段的字段类型为度量类型或未知类型的情况下,确定该任意输出字段的多种统计方式。
以图4为例,区域2的上述固定区域中,对任意输出字段可以提供多种可选的统计方式,如图4所示,输出字段“ID”可选的统计方式包括:按照原始值统计(对应图4中的“原始值”)、一般计数统计(对应图4中的“计数”)、去重计数统计(对应图4中的“去重计数”)、统计平均值(对应图4中的“求平均值”)。用户从这些可选的统计方式中进行选择,即可以确定任意输出字段对应的计算函数;根据该计算函数,可以确定输出字段是否对应聚合逻辑。具体地,上述不同的统计方式对应不同的计算函数,例如,去重计数统计对应的计算函数为去重计数“Distinct Count()”(函数的括号中包含字段名),统计平均值对应的计算函数为求平均值“AVG()”,等等。
在输出字段对应的计算函数为“Sum()”、“AVG()”或“Distinct Count()”的情况下,可以确定该任意输出字段对应聚合逻辑。
此外,上述实施方式中,针对至少一个输出字段中的任意输出字段,显示该任意输出字段的多种统计方式可以包括:
根据预先配置的数据模型,确定该任意输出字段的字段类型;
根据该任意输出字段的字段类型,确定该任意输出字段的多种统计方式;
显示该任意输出字段的多种统计方式。
由于对于不同字段类型的输出字段,其可能支持的统计方式不同,本公开实施方式通过根据字段类型来确定输出字段的统计方式,可以适合的统计方式来同用户选择,这对于无经验的用户非常友好;用户无需了解复杂的数据库知识,仅需要在可视化界面中进行选择即可。
并且,用户不需要了解在生成查询语句(如SQL语句)时聚合逻辑的确定方式,只需要在可视化界面中提供的系统支持的统计方式中进行选择,从而实现对输出字段进行设置;本公开实施方式提出的用于实现数据查询的方案可以根据用户的设置指令自动确定各个输出字段是否对应聚合逻辑,并根据输出字段是否对应聚合逻辑来确定查询逻辑,从而生成查询语句(如SQL语句)。
在一些实施方式中,本公开实施方式在上述至少一个输出字段中存在对应聚合逻辑的输出字段的情况下,确定查询逻辑为第一查询逻辑;
第一查询逻辑包括:从待查询的数据集中查询上述至少一个输出字段,并将查询结果根据对应聚合逻辑的输出字段进行分组输出。
或者,在上述至少一个输出字段中不存在对应聚合逻辑的输出字段的情况下,确定查询逻辑为第二查询逻辑;
第二查询逻辑包括:从待查询的数据集中查询上述至少一个输出字段,并将直接输出查询结果。
可见,本公开实施方式可以根据是否存在对应聚合逻辑的输出字段来自动确定查询逻辑,即确定根据聚合逻辑的输出字段进行分组输出、或者直接输出查询结果;用户无需根据输出字段的特征来确定查询逻辑,因此降低了对用户专业知识的要求,能够简单方便地实现多表地灵活多维聚合查询。
具体的,当多个输出字段中有一个或多个输出字段对应聚合逻辑时(对应的计算函数为SUM,AVG,COUNT DISTINCT等),本公开实施方式对输出字段中出现的维度字段和度量字段进行统计;其查询逻辑为根据过滤条件从数据集(如数据库、表)中查询输出字段,并对输出结果进行分组(group by);对应的SQL语句如下:
SELECT[函数(度量)or维度]FROM表名WHERE[过滤条件]GROUP BY[维度]ORDER BY[度量or维度]LIMIT[输出条数]。
当多个输出字段中没有任何输出字段对应聚合逻辑时,本公开实施方式直接输出查询结果;其查询逻辑为根据过滤条件从数据集(如数据库、表)中查询输出字段,对应的SQL语句如下:
SELECT[度量or维度]FROM表名WHERE[过滤条件]ORDER BY[度量or维度]LIMIT[输出条数]。
上述该功能默认,当输出字段含有函数或者聚合逻辑时,需要根据输出的维度字段对数据进行聚合;而输出字段不含函数或聚合逻辑时,仅对数据进行查询。该功能可以满足复杂场景的数据查询需求,可以满足90%的聚合场景。另外,为了满足对未知类型的输出字段(如ID或者其他唯一字段)的查询场景,该功能在未知类型的输出字段含有聚合逻辑或函数时将其作为度量字段使用,在未知类型的输出字段不含聚合逻辑或函数时将其作为维度字段使用。示例如下:
(1)当未知类型的输出字段(如ID)上含有聚合逻辑或函数时将其作为度量字段使用,ID不参与对输出结果的分组,对应的SQL语句示例如下:
SELECT sum(ID),name GROUP BY name
(2)当未知类型的输出字段(如ID)上不含聚合逻辑或函数时将其作为维度字段使用,ID参与对输出结果的分组,对应的SQL语句示例如下:
SELECT ID,name GROUP BY ID,name
以上介绍了用户在图4区域2中输入指令,并根据用户的指令确定查询逻辑的实现过程。
继续回到图4所示的可视化操作页面,图4所示的可视化操作页面还包括以下区域:
区域3:
区域3用于供用户输入输出内容的过滤条件。如图4所示,在区域3中,用户可以点击可视化操作页面上显示的数据集中的字段及过滤方式,以此实现对过滤条件中的字段及过滤方式的输入;响应于用户的输入,本公开实施方式提出的数据查询方式能够确定出过滤条件。以图4为例,用户选择可视化操作页面上显示的测试表的“性别”,选择“性别”字段的取值“男”,并选择对应的过滤方式为“非”;响应于用户的前述选择指示,能够确定出对应的过滤条件为:测试表中的字段“性别”取值不等于“男”。
该过滤条件可以作为查询逻辑中的一部分,表示输出的查询内容中不包含测试表中的字段“性别”取值等于“男”的信息,查询逻辑中的这部分内容对应查询语句(如SQL语句)中的WHERE部分。
区域3中还支持对过滤条件的分组设定,例如,用户在输入多个过滤条件之后,可以选择其中的多个过滤条件,并点击区域3中的“分组”按键,对选择出的多个过滤条件进行分组。响应于用户的分组设定,本公开实施方式提出的数据查询方式能够将用户选定的过滤条件进行分组。例如,用户选择过滤条件1和过滤条件2,并选择将过滤条件1和过滤条件2进行分组;则可以确定出过滤条件3,过滤条件3表示(过滤条件1and过滤条件2),即同时满足过滤条件1和过滤条件2。
区域4:
区域4用于供用户输入输出内容的数量上限。如图4所示,在区域4中,用户可以在“结果上限”输入框中输入数值,表示输出内容的最大数量。
利用用户在图4所示的可视化操作页面的各个区域中输入的指令,本公开实施方式能够确定查询逻辑。需要说明的是,图4中的上述各个区域仅用于举例说明,本公开实施方式不限定可视化操作页面的显示方式及用户指令的输入方式,并且还可以支持对其他内容的输入。例如,可视化操作页面还可以支持用户输入查询结果的排序方式,可视化操作页面可以选择用于排序的多个字段,用户在点击用于排序的多个字段中的任意一个或多个,用于表示指示输出结果按照该任意一个或多个字段进行排列并显示;该内容可以对应查询语句(如SQL语句)中的ORDER部分。
响应于用户输入的指令生成查询逻辑,本公开实施方式提供的数据查询方法还可以进一步包括:
响应于查询语句生成指令,生成查询逻辑对应的查询语句;
将该查询语句发送至待查询的数据集所对应的数据引擎,以供该数据引擎利用查询语句进行数据查询。
例如,在图4所示的可视化操作页面中设置“提交”按键,用户可以点击该“提交”按键,以发送查询语句生成指令;在检测到用户对“提交”按键的点击操作之后,本公开实施方式可以自动生成查询逻辑对应的查询语句,并查找待查询的数据集(如数据库、表)所对应的数据引擎,并将生成的查询语句发送至待查询的数据集所对应的数据引擎,以供该数据引擎根据利用查询语句进行数据查询。通过这种方式,为用户提供一键查询的简单操作,用户无需了解查询语句的语法规则和查询逻辑,也无需了解相关数据引擎的确定方式。因此,本公开实施方式提出的数据查询方法将数据的理解成本降低,减少对专业技术人员的依赖,降低SQL的查询难度,通过拖拽式的配置方式和分模块的功能区,使查询结构肉眼可见并易于理解,并且能够大大提高数据查询速度,通过控制数据的吞吐量,可以有针对性的完成小数据量数据的秒级返回。
以下结合用户在图3和图4所示可视化页面中的操作,介绍本公开实施方式提出的一种数据查询方法。图5是根据本公开另一实施例的数据查询方法实现流程图,包括以下阶段:
S510:模型配置,用户进行数据源接入和数据字段的配置。
具体地,用户可以在图3所示的数据模型配置页面中进行模型配置,确定待配置的数据集,并配置待配置的数据集中的各个数据字段,包括字段的名称、别名、数据类型、字段类型和过滤条件的控件类型等信息。
S520:获取用户选择数据源和字段配置信息,将其置于相应的字段输入区域和条件选择区域。
具体地,用户可以在图4所示的区域1中确定待查询的数据集,该待查询的数据集可以是在步骤S510中确定的待配置的数据集中的任意数据集。在用户选择待查询的数据集之后,可以在图4所示的区域2和区域3中显示待查询的数据集中包含的字段。用户可以在图4的区域2中点击前述显示的字段,作为选定该字段作为输出字段的指令;响应于用户的指令,可以确定用户选择的输出字段。并且,用户可以在图4的区域3中点击前述显示的字段,并点击过滤条件对应的字段取值和计算逻辑(如“与”、“或”、“非”);响应于用户的点击指令,确定生成查询逻辑中的过滤条件。
S530:获取用户的字段选择和条件配置,根据字段的函数信息对SQL的字段输出部分和分组部分进行逻辑处理。
具体地,用户可以在图4所示的区域2中确定输出字段之后,选择该输出字段的统计方式;根据该统计方式,能够确定字段对应的函数信息,根据该字段对应的函数信息能够对SQL的字段输出部分和分组部分进行逻辑处理。具体的查询逻辑和查询语句在上述实施方式中已有介绍,在此不再赘述。
S540:获取条件选择和条数限制信息,与前述逻辑处理完成的部分进行拼接。
具体地,用户可以在图4所示的区域4中输入条件限制信息,结合上述S520中的条件选择,可以与前述逻辑处理完成的部分进行拼接,得到完整的查询逻辑。
S550:根据用户选择的数据源信息,将拼装好的SQL分配给不同的数据引擎执行。
具体地,根据用户选择的数据集(如数据库、表),能够确定对应的数据引擎。在接收到的用户的查询语句生成指令之后,可以根据S540中得到的查询逻辑生成查询语句,并将该查询语句发送至上述数据引擎,以供该数据引擎根据利用该查询语句(如SQL语句)进行数据查询。
在一些实施方式中,响应于用户在图3所示的数据模型配置页面进行数据模型配置之后,本公开实施方式可以在图4所示的可视化操作页面中进行数据初始化。图6是根据本公开一实施例的数据查询方法中,可视化操作页面中数据初始化的实现流程图,包括:
S610:获取区域1中的数据源。
具体地,根据预先配置的数据模型,对用户可选择的待查询的数据集进行初始化。例如,将预先配置的数据模型所对应数据集均作为用户可选择的待查询的数据集。
S620:通过数据源获取字段类型,并进行过滤条件和输出字段的初始化。
具体地,根据预先配置的数据模型,可以确定待查询的数据集中的字段及字段类型,从而对区域2中的可选择的输出字段及区域3中条件过滤所涉及的字段进行初始化。
S630:将初始化完成的字段分别置于区域2和区域3,等待用户的输入。
之后,用户可以在区域2的初始化的字段中进行选择,响应于用户的选择指令,可以确定用户选择的输出字段。并且,用户可以在区域3的初始化的字段中进行选择,响应于用户的选择指令及对过滤算法的选择,可以确定用户选择的过滤方式。
本公开实施方式中,用户通过可视化页面输入相关指令,响应于用户输入的相关指令,可以生成SQL查询语句并进行数据查询。图7是根据本公开另一实施例的数据查询方法实现流程图,主要介绍响应于用户不同指令的相关操作,包括以下阶段:
S710:响应于用户指令,获取可视化操作页面区域2中用户选定的输出字段,根据该输出字段生成字段语句,如SQL语句中的SELECT部分。
S720:确定用户选定的输出字段中对应聚合逻辑的输出字段,并生成分组语句,如SQL语句中的GEOUP BY部分。在用户选定的输出字段中存在对应聚合逻辑的输出字段时,基于该输出字段对输出内容进行分组;在用户选定的输出字段中不存在对应聚合逻辑的输出字段时,直接输出并显示查询内容。
S730:收集输出内容的排列顺序,生成排序条件,如SQL语句中的ORDER BY部分。
S740:获取区域3中过滤条件的结构,生成过滤条件语句,如SQL语句中的WHERE部分。
S750:获取用户在区域4中输入的最大输出条数,生成输出条数限制语句,如SQL语句中的LIMIT部分。
S760:将上述各个条件进行组合,得到SQL查询语句,如:
Select(sum(a),b)from table where(c)group by(b)order(d)limit(e).
S770:根据不同数据源确定对应的查询引擎,将SQL查询语句发送至确定出的查询引擎。
例如,可以根据用户选择的数据集(如数据库或表)确定对应的查询引擎,将SQL语句发送至该查询引擎,由查询引擎进行执行数据的查询,并反馈数据查询结果。
本公开实施方式还提出一种数据查询装置,图8,包括:
数据集确定模块810,用于确定待查询的数据集,所述待查询的数据集包括数据库或表;
字段确定模块820,用于根据预先配置的数据模型,确定所述待查询的数据集中包含的多个字段;
显示模块830,用于显示所述多个字段,响应于针对所述多个字段的选择指令,从所述多个字段中确定至少一个输出字段;
指令设置模块840,用于响应于针对所述至少一个输出字段中的各个输出字段的设置指令,确定所述各个输出字段是否对应聚合逻辑;
逻辑确定模块850,用于根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑。
图9是根据本公开另一实施例提出的一种数据查询装置的结构示意图,该装置包括上述数据查询装置实施例的一个或多个特征,所述逻辑确定模块850,包括:
第一查询子模块910,用于在所述至少一个输出字段中存在对应聚合逻辑的输出字段的情况下,确定所述查询逻辑为第一查询逻辑;
所述第一查询逻辑包括:从所述待查询的数据集中查询所述至少一个输出字段,并将查询结果根据对应聚合逻辑的输出字段进行分组输出。
第二查询子模块920,用于在所述至少一个输出字段中不存在对应聚合逻辑的输出字段的情况下,确定所述查询逻辑为第二查询逻辑;
所述第二查询逻辑包括:从所述待查询的数据集中查询所述至少一个输出字段,并将直接输出查询结果。
图10是根据本公开另一实施例提出的一种数据查询装置的结构示意图,该装置包括上述数据查询装置实施例的一个或多个特征,所述指令设置模块840,包括;
第一显示子模块1010,用于针对所述至少一个输出字段中的任意输出字段,显示所述任意输出字段的多种统计方式;
第一确定子模块1020,用于响应于对所述多种统计方式中的一种统计方式的选择指令,确定所述任意输出字段对应的计算函数;
第二确定子模块1030,用于根据所述任意输出字段对应的计算函数,确定所述任意输出字段是否对应聚合逻辑。
第三确定子模块1040,用于在所述任意输出字段对应的计算函数为求和、求平均值或去重计数的情况下,确定所述任意输出字段对应聚合逻辑。
在一种可能的实施方式中,所述第一显示子模块,包括:
根据所述预先配置的数据模型,确定所述任意输出字段的字段类型;
根据所述任意输出字段的字段类型,确定所述任意输出字段的多种统计方式;
显示所述任意输出字段的多种统计方式。
在一种可能的实施方式中,所述任意输出字段的多种统计方式包括:按照原始值统计、一般计数统计、去重计数统计、统计平均值、求和统计、统计最大值、统计最小值及统计中位数。
在一种可能的实施方式中,所述根据所述任意输出字段的字段类型,确定所述任意输出字段的多种统计方式,包括:
在所述任意输出字段的字段类型为度量类型或未知类型的情况下,确定所述任意输出字段的多种统计方式。一般情况下,度量类型的输出字段存在对应的统计方式;未知类型是本公开实施方式提出一种可变的类型,未知类型的输出字段在一些情况下等同于度量类型、在另一些情况下等同于维度类型,本公开实施方式中将未知类型的输出字段也设置为存在对应的统计方式,可以使统计方式的应用更为灵活。
图11是根据本公开另一实施例提出的一种数据查询装置的结构示意图,该装置包括上述数据查询装置实施例的一个或多个特征,在所述数据集确定模块810之前,还包括:
配置模块1110,用于响应于信息输入指令,配置所述数据模型;其中,
所述信息输入指令中包含多个待配置的数据集的标识信息,还包含各个所述待配置的数据集中的字段的名称、数据类型、字段类型和过滤条件的控件类型中的至少一项;其中,所述字段类型包括维度类型、度量类型和未知类型;
所述数据模型中记录所述信息输入指令中包含的信息。
图12是根据本公开另一实施例提出的一种数据查询装置的结构示意图,该装置包括上述数据查询装置实施例的一个或多个特征,所述数据集确定模块810,包括:
第四确定子模块1210,用于根据所述预先配置的数据模型,确定所述多个待配置的数据集的标识信息;
第二显示子模块1220,用于显示所述多个待配置的数据集的标识信息;
选择子模块1230,用于响应于对所述多个待配置的数据集的标识信息中的任意标识信息的选择指令,确定至少两个待查询的数据集。
显示所述至少两个待查询的数据集中,各个待查询的数据集的标识信息;
响应于对任意待查询的数据集的标识信息的拖拽指令,确定所述至少两个待查询的数据集中,任意待查询的数据集之间的连接关系。
图13是根据本公开另一实施例提出的一种数据查询装置的结构示意图,该装置包括上述数据查询装置实施例的一个或多个特征.在一种可能的实施方式中,该装置还包括:
生成模块1310,用于响应于查询语句生成指令,生成所述查询逻辑对应的查询语句;
发送模块1320,用于将所述查询语句发送至所述待查询的数据集所对应的数据引擎,以供所述数据引擎根据利用所述查询语句进行数据查询。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图14示出了可以用来实施本公开的实施例的示例电子设备1400的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图14所示,设备1400包括计算单元1401,其可以根据存储在只读存储器(ROM)1402中的计算机程序或者从存储单元1408加载到随机访问存储器(RAM)1403中的计算机程序,来执行各种适当的动作和处理。在RAM 1403中,还可存储设备1400操作所需的各种程序和数据。计算单元1401、ROM 1402以及RAM 1403通过总线1404彼此相连。输入/输出(I/O)接口1405也连接至总线1404。
设备1400中的多个部件连接至I/O接口1405,包括:输入单元1406,例如键盘、鼠标等;输出单元1407,例如各种类型的显示器、扬声器等;存储单元1408,例如磁盘、光盘等;以及通信单元1409,例如网卡、调制解调器、无线通信收发机等。通信单元1409允许设备1400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1401的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1401执行上文所描述的各个方法和处理,例如一种数据查询方法。例如,在一些实施例中,一种数据查询方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1402和/或通信单元1409而被载入和/或安装到设备1400上。当计算机程序加载到RAM 1403并由计算单元1401执行时,可以执行上文描述的一种数据查询方法的一个或多个步骤。备选地,在其他实施例中,计算单元1401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行一种数据查询方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (27)

1.一种数据查询方法,包括:
确定待查询的数据集,所述待查询的数据集包括数据库或表;
根据预先配置的数据模型,确定所述待查询的数据集中包含的多个字段;
显示所述多个字段,响应于针对所述多个字段的选择指令,从所述多个字段中确定至少一个输出字段;
响应于针对所述至少一个输出字段中的各个输出字段的设置指令,确定所述各个输出字段是否对应聚合逻辑;
根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑。
2.根据权利要求1所述的方法,其中,所述根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑,包括:
在所述至少一个输出字段中存在对应聚合逻辑的输出字段的情况下,确定所述查询逻辑为第一查询逻辑;
所述第一查询逻辑包括:从所述待查询的数据集中查询所述至少一个输出字段,并将查询结果根据对应聚合逻辑的输出字段进行分组输出。
3.根据权利要求1或2所述的方法,其中,所述根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑,包括:
在所述至少一个输出字段中不存在对应聚合逻辑的输出字段的情况下,确定所述查询逻辑为第二查询逻辑;
所述第二查询逻辑包括:从所述待查询的数据集中查询所述至少一个输出字段,并将直接输出查询结果。
4.根据权利要求1至3中任一所述的方法,其中,所述响应于针对所述至少一个输出字段中的各个输出字段的设置指令,确定所述各个输出字段是否对应聚合逻辑,包括;
针对所述至少一个输出字段中的任意输出字段,显示所述任意输出字段的多种统计方式;
响应于对所述多种统计方式中的一种统计方式的选择指令,确定所述任意输出字段对应的计算函数;
根据所述任意输出字段对应的计算函数,确定所述任意输出字段是否对应聚合逻辑。
5.根据权利要求4所述的方法,其中,所述根据所述任意输出字段对应的计算函数,确定所述任意输出字段是否对应聚合逻辑,包括:
在所述任意输出字段对应的计算函数为求和、求平均值或去重计数的情况下,确定所述任意输出字段对应聚合逻辑。
6.根据权利要求4或5所述的方法,其中,所述针对所述至少一个输出字段中的任意输出字段,显示所述任意输出字段的多种统计方式,包括:
根据所述预先配置的数据模型,确定所述任意输出字段的字段类型;
根据所述任意输出字段的字段类型,确定所述任意输出字段的多种统计方式;
显示所述任意输出字段的多种统计方式。
7.根据权利要求6所述的方法,其中,所述任意输出字段的多种统计方式包括:按照原始值统计、一般计数统计、去重计数统计、统计平均值、求和统计、统计最大值、统计最小值及统计中位数。
8.根据权利要求6或7所述的方法,其中,所述根据所述任意输出字段的字段类型,确定所述任意输出字段的多种统计方式,包括:
在所述任意输出字段的字段类型为度量类型或未知类型的情况下,确定所述任意输出字段的多种统计方式。
9.根据权利要求1至8中任一所述的方法,在所述确定待查询的数据集之前,还包括:
响应于信息输入指令,配置所述数据模型;其中,
所述信息输入指令中包含多个待配置的数据集的标识信息,还包含各个所述待配置的数据集中的字段的名称、数据类型、字段类型和过滤条件的控件类型中的至少一项;其中,所述字段类型包括维度类型、度量类型和未知类型;
所述数据模型中记录所述信息输入指令中包含的信息。
10.根据权利要求9所述的方法,其中,所述确定待查询的数据集,包括:
根据所述预先配置的数据模型,确定所述多个待配置的数据集的标识信息;
显示所述多个待配置的数据集的标识信息;
响应于对所述多个待配置的数据集的标识信息中的任意标识信息的选择指令,确定至少两个待查询的数据集。
11.根据权利要求10所述的方法,还包括:
显示所述至少两个待查询的数据集中,各个待查询的数据集的标识信息;
响应于对任意待查询的数据集的标识信息的拖拽指令,确定所述至少两个待查询的数据集中,任意待查询的数据集之间的连接关系。
12.根据权利要求1至11中任一所述的方法,还包括:
响应于查询语句生成指令,生成所述查询逻辑对应的查询语句;
将所述查询语句发送至所述待查询的数据集所对应的数据引擎,以供所述数据引擎根据利用所述查询语句进行数据查询。
13.一种数据查询装置,包括:
数据集确定模块,用于确定待查询的数据集,所述待查询的数据集包括数据库或表;
字段确定模块,用于根据预先配置的数据模型,确定所述待查询的数据集中包含的多个字段;
显示模块,用于显示所述多个字段,响应于针对所述多个字段的选择指令,从所述多个字段中确定至少一个输出字段;
指令设置模块,用于响应于针对所述至少一个输出字段中的各个输出字段的设置指令,确定所述各个输出字段是否对应聚合逻辑;
逻辑确定模块,用于根据所述各个输出字段是否对应聚合逻辑,确定查询逻辑。
14.根据权利要求13所述的装置,其中,所述逻辑确定模块,包括:
第一查询子模块,用于在所述至少一个输出字段中存在对应聚合逻辑的输出字段的情况下,确定所述查询逻辑为第一查询逻辑;
所述第一查询逻辑包括:从所述待查询的数据集中查询所述至少一个输出字段,并将查询结果根据对应聚合逻辑的输出字段进行分组输出。
15.根据权利要求13或14所述的装置,其中,所述逻辑确定模块,还包括:
第二查询子模块,用于在所述至少一个输出字段中不存在对应聚合逻辑的输出字段的情况下,确定所述查询逻辑为第二查询逻辑;
所述第二查询逻辑包括:从所述待查询的数据集中查询所述至少一个输出字段,并将直接输出查询结果。
16.根据权利要求13至15中任一所述的装置,其中,所述指令设置模块,包括;
第一显示子模块,用于针对所述至少一个输出字段中的任意输出字段,显示所述任意输出字段的多种统计方式;
第一确定子模块,用于响应于对所述多种统计方式中的一种统计方式的选择指令,确定所述任意输出字段对应的计算函数;
第二确定子模块,用于根据所述任意输出字段对应的计算函数,确定所述任意输出字段是否对应聚合逻辑。
17.根据权利要求16所述的装置,其中,所述指令设置模块,还包括:
第三确定子模块,用于在所述任意输出字段对应的计算函数为求和、求平均值或去重计数的情况下,确定所述任意输出字段对应聚合逻辑。
18.根据权利要求16或17所述的装置,其中,所述第一显示子模块,包括:
根据所述预先配置的数据模型,确定所述任意输出字段的字段类型;
根据所述任意输出字段的字段类型,确定所述任意输出字段的多种统计方式;
显示所述任意输出字段的多种统计方式。
19.根据权利要求18所述的装置,其中,所述任意输出字段的多种统计方式包括:按照原始值统计、一般计数统计、去重计数统计、统计平均值、求和统计、统计最大值、统计最小值及统计中位数。
20.根据权利要求18或19所述的装置,其中,所述根据所述任意输出字段的字段类型,确定所述任意输出字段的多种统计方式,包括:
在所述任意输出字段的字段类型为度量类型或未知类型的情况下,确定所述任意输出字段的多种统计方式。
21.根据权利要求13至20中任一所述的装置,在所述数据集确定模块之前,还包括:
配置模块,用于响应于信息输入指令,配置所述数据模型;其中,
所述信息输入指令中包含多个待配置的数据集的标识信息,还包含各个所述待配置的数据集中的字段的名称、数据类型、字段类型和过滤条件的控件类型中的至少一项;其中,所述字段类型包括维度类型、度量类型和未知类型;
所述数据模型中记录所述信息输入指令中包含的信息。
22.根据权利要求21所述的装置,其中,所述数据集确定模块,包括:
第四确定子模块,用于根据所述预先配置的数据模型,确定所述多个待配置的数据集的标识信息;
第二显示子模块,用于显示所述多个待配置的数据集的标识信息;
选择子模块,用于响应于对所述多个待配置的数据集的标识信息中的任意标识信息的选择指令,确定至少两个待查询的数据集。
23.根据权利要求22所述的装置,还包括:
显示所述至少两个待查询的数据集中,各个待查询的数据集的标识信息;
响应于对任意待查询的数据集的标识信息的拖拽指令,确定所述至少两个待查询的数据集中,任意待查询的数据集之间的连接关系。
24.根据权利要求13至23中任一所述的装置,还包括:
生成模块,用于响应于查询语句生成指令,生成所述查询逻辑对应的查询语句;
发送模块,用于将所述查询语句发送至所述待查询的数据集所对应的数据引擎,以供所述数据引擎根据利用所述查询语句进行数据查询。
25.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-12中任一项所述的方法。
26.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-12中任一项所述的方法。
27.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-12中任一项所述的方法。
CN202111630201.6A 2021-12-28 2021-12-28 一种数据查询方法、装置、电子设备以及存储介质 Pending CN114416772A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111630201.6A CN114416772A (zh) 2021-12-28 2021-12-28 一种数据查询方法、装置、电子设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111630201.6A CN114416772A (zh) 2021-12-28 2021-12-28 一种数据查询方法、装置、电子设备以及存储介质

Publications (1)

Publication Number Publication Date
CN114416772A true CN114416772A (zh) 2022-04-29

Family

ID=81270069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111630201.6A Pending CN114416772A (zh) 2021-12-28 2021-12-28 一种数据查询方法、装置、电子设备以及存储介质

Country Status (1)

Country Link
CN (1) CN114416772A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115062133A (zh) * 2022-08-17 2022-09-16 广州思迈特软件有限公司 基于数据模型的数据查询方法、装置、计算机设备及介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115062133A (zh) * 2022-08-17 2022-09-16 广州思迈特软件有限公司 基于数据模型的数据查询方法、装置、计算机设备及介质

Similar Documents

Publication Publication Date Title
CN111177231B (zh) 报表生成方法和报表生成装置
CN112269789A (zh) 存储数据的方法和装置、以及读取数据的方法和装置
WO2019153514A1 (zh) 业务系统动态生成方法、装置、计算机设备及存储介质
US11442930B2 (en) Method, apparatus, device and storage medium for data aggregation
US20230134235A1 (en) Applying a Visual Analytics Intent Language to Generate Data Visualizations
CN112528067A (zh) 图数据库的存储方法、读取方法、装置及设备
CN113656407A (zh) 一种数据拓扑生成方法、装置、电子设备及存储介质
CN114816578A (zh) 基于配置表的程序配置文件生成方法、装置及设备
CN114416772A (zh) 一种数据查询方法、装置、电子设备以及存储介质
CN116955856A (zh) 信息展示方法、装置、电子设备以及存储介质
CN116881219A (zh) 数据库的优化处理方法、装置、电子设备及存储介质
CN115329150A (zh) 生成搜索条件树的方法、装置、电子设备及存储介质
CN114297443B (zh) 图数据查询语句的处理方法、装置、设备及存储介质
CN116009847A (zh) 代码生成方法、装置、电子设备及存储介质
CN115687717A (zh) Grok表达式获取方法、装置、设备及计算机可读存储介质
CN113407749B (zh) 图片索引构建方法、装置、电子设备以及存储介质
US10824606B1 (en) Standardizing values of a dataset
CN115328898A (zh) 一种数据处理方法、装置、电子设备及介质
CN115080607A (zh) 一种结构化查询语句的优化方法、装置、设备及存储介质
WO2021196470A1 (zh) 信息推送方法、装置、设备及存储介质
CN114238745A (zh) 一种提供搜索结果的方法及装置、电子设备和介质
CN112905872B (zh) 意图识别方法、装置、设备和可读存储介质
CN112306312A (zh) 数据处理方法、数据处理系统、信息创建方法及设备
CN113220710B (zh) 数据查询方法、装置、电子设备以及存储介质
CN114741072B (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