条件查询方法、装置和电子设备制造方法及图纸

技术编号:34141858 阅读:18 留言:0更新日期:2022-07-14 18:01
本申请实施例公开了条件查询方法、装置和电子设备。该方法的一具体实施方式包括:响应于检测到在表格中进行条件查询,对条件查询公式进行解析,得到所述条件查询公式对应的树状结构;基于所述树状结构中的节点信息,确定所述树状结构中的目标节点,对所述目标节点进行处理;按照预设的数据描述结构,从处理后的目标节点中提取算子,得到至少一个算子;利用所述至少一个算子,在所述表格中查询并呈现符合查询条件的结果。该实施方式可以更加快速准确地在表格中查询数据。地在表格中查询数据。地在表格中查询数据。

【技术实现步骤摘要】
条件查询方法、装置和电子设备


[0001]本公开实施例涉及计算机
,具体涉及条件查询方法、装置和电子设备。

技术介绍

[0002]数据库表格通常支持公式字段查询,在数据库表格的数据量级不断变大变复杂的情况下,通常需要更快更准确地查询数据。现有的数据库表格在字段数和记录数达到一定量级时,需要较重的遍历成本,且数据库表格拥有许多不同的字段类型,不同的字段类型参与公式计算的规则也不相同。

技术实现思路

[0003]提供该公开内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该公开内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
[0004]第一方面,本公开实施例提供了一种条件查询方法,包括:响应于检测到在表格中进行条件查询,对条件查询公式进行解析,得到条件查询公式对应的树状结构;基于树状结构中的节点信息,确定树状结构中的目标节点,对目标节点进行处理;按照预设的数据描述结构,从处理后的目标节点中提取算子,得到至少一个算子;利用至少一个算子,在表格中查询并呈现符合查询条件的结果。
[0005]第二方面,本公开实施例提供了一种条件查询装置,包括:解析单元,用于响应于检测到在表格中进行条件查询,对条件查询公式进行解析,得到条件查询公式对应的树状结构;处理单元,用于基于树状结构中的节点信息,确定树状结构中的目标节点,对目标节点进行处理;提取单元,用于按照预设的数据描述结构,从处理后的目标节点中提取算子,得到至少一个算子;查询单元,用于利用至少一个算子,在表格中查询并呈现符合查询条件的结果。
[0006]第三方面,本公开实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的条件查询方法。
[0007]第四方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的条件查询方法的步骤。
[0008]本公开实施例提供的条件查询方法、装置和电子设备,通过检测到在表格中进行条件查询,对条件查询公式进行解析,得到上述条件查询公式对应的树状结构;之后,基于上述树状结构中的节点信息,确定上述树状结构中的目标节点,对上述目标节点进行处理;而后,按照预设的数据描述结构,从处理后的目标节点中提取算子,得到至少一个算子;最后,利用上述至少一个算子,在上述表格中查询并呈现符合查询条件的结果。通过对条件查询公式进行优化以及对公式中的算子进行提取,可以更加快速准确地在表格中查询数据。
附图说明
[0009]结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
[0010]图1是根据本公开的条件查询方法的一个实施例的流程图;
[0011]图2是根据本公开的条件查询方法的条件查询公式对应的一个树状结构的示意图;
[0012]图3是根据本公开的条件查询方法的又一个实施例的流程图;
[0013]图4是根据本公开的条件查询方法的再一个实施例的流程图;
[0014]图5是根据本公开的条件查询方法的另一个实施例的流程图;
[0015]图6是根据本公开的条件查询装置的一个实施例的结构示意图;
[0016]图7是本公开的各个实施例可以应用于其中的示例性系统架构图;
[0017]图8是适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
具体实施方式
[0018]下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0019]应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0020]本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0021]需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0022]需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0023]本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
[0024]图1示出了根据本公开的条件查询方法的一个实施例的流程100。该条件查询方法,包括以下步骤:
[0025]步骤101,响应于检测到在表格中进行条件查询,对条件查询公式进行解析,得到条件查询公式对应的树状结构。
[0026]在本实施例中,条件查询方法的执行主体可以检测用户是否在表格中进行条件查询。在这里,用户可以通过在表格的公式字段中输入条件查询公式从而实现条件查询。
[0027]若检测到在上述表格中进行条件查询,上述执行主体可以对条件查询公式进行解
析,得到条件查询公式对应的树状结构。上述执行主体可以根据条件查询公式的语法定义,对该条件查询公式进行解析。树状结构通常是以树状形式表现的语法结构。
[0028]树状结构也可以称为树形结构,是一层次的嵌套结构。一个树形结构的外层和内层有相似的结构,所以这种结构多可以递归的表示。在树状结构中,一颗树可以简单的表示为根,左子树,右子树。左子树和右子树又有自己的子树。在树状结构中,树根节点没有前驱节点,其余每个节点有且只有一个前驱节点。叶子节点没有后续节点,其余每个节点的后续节点数可以是一个也可以是多个。
[0029]如图2所示,图2示出了根据本公开的条件查询方法的条件查询公式对应的一个树状结构的示意图。
[0030]在图2中,如图标201所示,条件查询公式为:Table1.FILTER(CurrentValue.分数>90).姓名,即查询分数大于90的人员姓名。在对条件查询公式201进行解析之后,可以得到如图2所示的树状结构。在这里,图标202所示的为此树状结构中的目标节点,即重要节点。
[0031]步骤本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种条件查询方法,其特征在于,包括:响应于检测到在表格中进行条件查询,对条件查询公式进行解析,得到所述条件查询公式对应的树状结构;基于所述树状结构中的节点信息,确定所述树状结构中的目标节点,对所述目标节点进行处理;按照预设的数据描述结构,从处理后的目标节点中提取算子,得到至少一个算子;利用所述至少一个算子,在所述表格中查询并呈现符合查询条件的结果。2.根据权利要求1所述的方法,其特征在于,所述对所述目标节点进行处理,包括以下至少一项:确定所述目标节点中的表达式,从所述表达式中确定出不符合预设规则的表达式进行标识;利用所述目标节点中的至少两个表达式的不同执行顺序对应的查询代价,调整所述目标节点中的至少两个表达式的位置;对所述目标节点中的表达式进行预合并操作。3.根据权利要求1所述的方法,其特征在于,所述按照预设的数据描述结构,从处理后的目标节点中提取算子,得到至少一个算子,包括:从处理后的目标节点中查找逻辑运算符,基于所述逻辑运算符,提取所述处理后的目标节点中的表达式;确定所述表达式是否符合预设的数据描述结构;若是,则对符合所述数据描述结构的至少一个表达式进行解析,得到至少一个算子。4.根据权利要求3所述的方法,其特征在于,所述基于所述逻辑运算符,提取所述处理后的目标节点中的表达式,包括:执行如下提取步骤:查找逻辑运算符的相邻节点;确定相邻节点中是否包含逻辑运算符;若相邻节点中未包含逻辑运算符,则将提取出的节点确定为所述处理后的目标节点中的至少一个表达式;若相邻节点中包含逻辑运算符,则继续执行所述提取步骤。5.根据权利要求3所述的方法,其特征在于,所述数据描述结构包括左节点、右节点和操作符,所述左节点用于表征查询字段名称,所述右节点用于表征搜索的数值;以及所述确定所述表达式是否符合预设的数据描述结构,包括:确定所述表达式是否包含查询字段名称、搜索的数值和操作符;若是,则确定所述表达式符合所述数据描述结构。6.根据权利...

【专利技术属性】
技术研发人员:罗展宏
申请(专利权)人:北京字跳网络技术有限公司
类型:发明
国别省市:

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

1