CN116561181A - 数据查询方法、装置、计算机设备及计算机可读存储介质 - Google Patents

数据查询方法、装置、计算机设备及计算机可读存储介质 Download PDF

Info

Publication number
CN116561181A
CN116561181A CN202310740022.0A CN202310740022A CN116561181A CN 116561181 A CN116561181 A CN 116561181A CN 202310740022 A CN202310740022 A CN 202310740022A CN 116561181 A CN116561181 A CN 116561181A
Authority
CN
China
Prior art keywords
character
target
index information
characters
object data
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
CN202310740022.0A
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.)
Kingdee Deeking Cloud Computing Co ltd
Original Assignee
Kingdee Deeking Cloud Computing 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 Kingdee Deeking Cloud Computing Co ltd filed Critical Kingdee Deeking Cloud Computing Co ltd
Priority to CN202310740022.0A priority Critical patent/CN116561181A/zh
Publication of CN116561181A publication Critical patent/CN116561181A/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/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • 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
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本申请涉及一种数据查询方法、装置、计算机设备及计算机可读存储介质。所述方法包括:获取待查询的目标字符;基于目标字符确定字符索引表中与目标字符对应的索引信息,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息;基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。采用本方法能够有效提高数据查询的效率。

Description

数据查询方法、装置、计算机设备及计算机可读存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据查询方法、装置、计算机设备及计算机可读存储介质。
背景技术
随着计算机技术的发展,企业资源计划(Enterprise Resource Planning,ERP)系统已被广泛应用于各行各业的生产与管理工作中,企业资源计划系统的信息化离不开单据信息的录入,而在进行单据信息录入时,需要对相关数据进行查询。
传统技术中,在进行数据查询时,需要对数据库中的数据进行全表扫描,当数据量较大时,数据查询效率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种数据查询方法、装置、计算机设备及计算机可读存储介质,能够有效提高数据查询的效率。
第一方面,本申请提供了一种数据查询方法,包括:
获取待查询的目标字符;
基于目标字符确定字符索引表中与目标字符对应的索引信息,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息;
基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。
在其中一个实施例中,目标字符包括至少两个字符,基于目标字符确定字符索引表中与目标字符对应的索引信息,包括:
按照预设顺序依次确定目标字符中的前置字符与对应的后置字符,前置字符是按照预设顺序位于前列的预设数量个字符;
根据前置字符确定对应的前置索引信息;
根据后置字符在对应的前置索引信息的基础上确定匹配的后置索引信息;
将匹配的后置索引信息作为目标字符对应的索引信息。
在其中一个实施例中,目标字符包括至少两个字符,基于目标字符确定字符索引表中与目标字符对应的索引信息,包括:
基于字符索引表,分别对目标字符中的各个字符进行查询;
根据查询结果,从目标字符中确定识别字符与未识别字符,识别字符为查询成功的字符,未识别字符为查询失败的字符;
基于识别字符确定字符索引表中与识别字符对应的识别索引信息,并将识别索引信息作为目标字符对应的索引信息。
在其中一个实施例中,根据存储位置确定并输出目标对象数据,包括:
根据存储位置确定目标对象数据;
基于目标对象数据的历史搜索数据,确定目标排列方式;
按照目标排列方式输出目标对象数据。
第二方面,本申请还提供了一种数据存储方法,包括:
获取对象列表,对象列表分行存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置;
将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符;
基于每个对象数据及对应的索引信息,得到各个字符对应的索引信息;
获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,字符索引表用于根据输入的目标字符确定对应的对象数据在对象列表中的存储位置。
在其中一个实施例中,将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符,包括:
当目标字段为单个字段时,将单个字段对应的字符串进行拆分,得到目标字段对应的各个字符;
当目标字段为多个字段时,将多个字段对应的字符串进行合并得到合并字符串,并对合并字符串进行拆分,得到目标字段对应的各个字符,多个字段为至少两个字段。
第三方面,本申请还提供了一种数据查询装置,包括:
获取模块,用于获取待查询的目标字符;
确定模块,用于基于目标字符确定字符索引表中与目标字符对应的索引信息,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息;
查询模块,用于基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。
第四方面,本申请还提供了一种数据存储装置,包括:
获取模块,用于获取对象列表,对象列表分行存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置;
确定模块,用于将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符;基于每个对象数据及对应的索引信息,得到各个字符对应的索引信息;获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
存储模块,用于将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,字符索引表用于根据输入的目标字符确定对应的对象数据在对象列表中的存储位置。
第五方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待查询的目标字符;
基于目标字符确定字符索引表中与目标字符对应的索引信息,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息;
基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。
第六方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取对象列表,对象列表分行存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置;
将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符;
基于每个对象数据及对应的索引信息,得到各个字符对应的索引信息;
获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,字符索引表用于根据输入的目标字符确定对应的对象数据在对象列表中的存储位置。
第七方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待查询的目标字符;
基于目标字符确定字符索引表中与目标字符对应的索引信息,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息;
基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。
第八方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取对象列表,对象列表分行存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置;
将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符;
基于每个对象数据及对应的索引信息,得到各个字符对应的索引信息;
获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,字符索引表用于根据输入的目标字符确定对应的对象数据在对象列表中的存储位置。
上述数据查询方法、装置、计算机设备及计算机可读存储介质,通过获取待查询的目标字符,再基于目标字符确定字符索引表中与目标字符对应的索引信息,其中,字符索引表包含字符以及与字符对应的对象数据的索引信息,而字符又是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息,最后基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置,相比于传统技术需要进行全表扫描的查询技术而言,通过这种将对象列表中目标字段字符串拆分得到的字符作为字符索引表的匹配字符的方法,有效利用字符数量的有限性,极大地缩短并限定字符索引表的规模,从而使得在利用该字符索引表对大数据规模的对象列表数据查询过程中,能够快速略过大量冗余信息,不需要进行全表扫描,精准缩小了数据查询范围,从而有效提高数据查询的效率。
附图说明
图1为一个实施例中数据查询方法的流程示意图;
图2为一个实施例中根据目标字符确定索引信息的流程示意图;
图3为一个实施例中确定包含未识别字符的目标字符确定索引信息的流程示意图;
图4为一个实施例中确定目标对象数据排列方式的流程示意图;
图5为另一个实施例中数据存储方法的流程示意图;
图6为一个实施例中根据目标字段确定对应各个字符的流程示意图;
图7为一个实施例中商品信息单据录入的界面示意图;
图8为一个实施例中数据查询装置的结构框图;
图9为一个实施例中数据存储装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种数据转发方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,获取待查询的目标字符。
其中,目标字符可以为单个字符,也可以是多个字符的集合,字符的类型可以包括但不限于简体中文、繁体中文、英文等各个不同国家的语言字符,还可以是各种数学符号、希腊字符、阿拉伯数字、运算符等其他特殊符号,获取目标字符的方式可以是直接接收用户在前端输入框中输入的字符,还可以通过其他计算机设备发送过来的字符数据,还可以是从数据库中直接读取的预设字符,具体方式不做限定。
步骤104,基于目标字符确定字符索引表中与目标字符对应的索引信息。
其中,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置。
具体地,终端根据前述步骤获取目标字符后,根据目标字符在字符索引表中按照预设顺序进行查找,具体可以是根据目标字符与字符索引表中对应的字符字段的匹配情况来确定对应的索引信息,例如当目标字符与字符字段中的各行字段数据进行比对,当目标字符与某行的字段数据为相同的字符时,则表示匹配成功,将该匹配成功的字段数据对应的索引信息作为字符索引表中与目标字符对应的索引信息。
步骤106,基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。
其中,目标字符与对应的索引信息之间的对应关系可以是一个目标字符对应一个索引信息,也可以是一个目标字符对应多个索引信息,并且字符索引表中不同字符所对应的索引信息的类别及数量可以相同,也可以不同,还可以部分相同及部分不同;而一个索引信息可以唯一地指定一个对应的对象数据在对象列表中的存储位置。
具体地,终端根据目标字符对应的索引信息,确定对应目标对象数据在对象列表中的行列位置信息,再根据行列位置信息确定对应的目标对象数据的存储位置确定并输出目标对象数据。
本实施例中,通过获取待查询的目标字符,再基于目标字符确定字符索引表中与目标字符对应的索引信息,其中,字符索引表包含字符以及与字符对应的对象数据的索引信息,而字符又是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息,最后基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置,相比于传统技术需要进行全表扫描的查询技术而言,通过这种将对象列表中目标字段字符串拆分得到的字符作为字符索引表的匹配字符的方法,有效利用字符数量的有限性,极大地缩短并限定字符索引表的规模,从而使得在利用该字符索引表对大数据规模的对象列表数据查询过程中,能够快速略过大量冗余信息,不需要进行全表扫描,精准缩小了数据查询范围,从而有效提高数据查询的效率。
在一个实施例中,如图2所示,基于目标字符确定字符索引表中与目标字符对应的索引信息,包括:
其中,目标字符包括至少两个字符。
步骤202,按照预设顺序依次确定目标字符中的前置字符与对应的后置字符。
其中,前置字符是按照预设顺序位于前列的预设数量个字符,预设数量可以是1也可以是其他数字,前置字符是按照预设顺序位于后置字符之前的字符,预设顺序的确定方式包括但不限于是由技术人员预先设定的固定顺序,还可以是由用户在系统操作界面中进行自定义设定得到的,预设顺序可以是从左向右或从右向左依次遍历目标字符中的各个字符,预设顺序也可以是用户输入字符的顺序。
可选地,还可以根据预先配置的不同字符对应的优先级来进行遍历,例如预先配置简体中文字符优先级大于英文字符优先级,英文字符优先级大于数字字符优先级,则当目标字符中同时包括多种不同类型字符时,按照预先设定的字符的优先级顺序来依次区分目标字符中的前置字符与后置字符,如目标字符为“H钢笔”时,则按照预设优先级顺序先确定字符“钢”为前置字符,将字符“笔”作为字符“钢”的后置字符,再将字符“H”作为字符“笔”的后置字符。
步骤204,根据前置字符确定对应的前置索引信息。
具体地,终端根据前置字符在字符索引表中确定该前置字符的行列位置信息,根据行列位置信息确定同行中存储的前置索引信息。
在另一个实施例中,当字符索引表中不包含当前前置字符时,则返回“未包含字符x”或“字符x查询失败”等提示信息。
步骤206,根据后置字符在对应的前置索引信息的基础上确定匹配的后置索引信息。
具体地,终端在前述步骤中根据前置字符确定出对应的前置索引信息,在前置索引信息的基础上再通过后置字符确定对应的后置索引信息,在前置索引信息的基础上进一步缩小查询结果范围。
举例说明,当目标字符为“红铅”时,若字符“红”为前置字符,字符“铅”为后置字符,则终端先根据前置字符“红”确定字符索引表中字符“红”对应的前置索引信息{1,2,4,5,6,7},再根据字符“铅”确定字符索引表中与字符“铅”对应的索引信息{4,5,6,8,9,10},再将前置索引信息{1,2,4,5,6,7}与索引信息{4,5,6,8,9,10}取交集运算,得到后置索引信息{4,5,6},从而实现在该前置索引信息的基础上确定后置字符“铅”对应在字符索引表中的后置索引信息{4,5,6},其中后置字符对应的后置索引信息是前置字符对应的前置索引信息的子集。
步骤208,将匹配的后置索引信息作为目标字符对应的索引信息。
具体地,终端对当前字符的前置字符与后置字符进行分析,若当前字符没有对应的后置字符时,则确定当前字符为目标字符中最后一个字符,将该当前字符对应的后置索引信息作为目标字符对应的索引信息。
本实施例中,通过按照预设顺序依次确定目标字符中的前置字符与对应的后置字符,再根据前置字符确定对应的前置索引信息,后置字符在对应的前置索引信息的基础上来确定匹配的后置索引信息,最后将目标字符中最后一个字符所匹配的后置索引信息作为目标字符对应的索引信息,能够有效缩小数据查询的范围,从而无需对对象列表的全部数据进行扫描,有效提高数据查询的效率。
在一个实施例中,如图3所示,基于目标字符确定字符索引表中与目标字符对应的索引信息,包括:
其中,目标字符包括至少两个字符。
步骤302,基于字符索引表,分别对目标字符中的各个字符进行查询。
步骤304,根据查询结果,从目标字符中确定识别字符与未识别字符。
其中,识别字符为查询成功的字符,未识别字符为查询失败的字符。
具体地,终端根据前述步骤得到目标字符中各个字符对应的查询结果,当查询结果为查询成功(即得到字符对应的索引信息)时,确定当前字符为识别字符,即表示字符索引表中存在与当前字符相同的字符,当查询结果为查询失败(即查询到的字符对应索引信息为空)时,确定当前字符为未识别字符,即表示字符索引表中不存在与当前字符相同的字符。
步骤306,基于识别字符确定字符索引表中与识别字符对应的识别索引信息,并将识别索引信息作为目标字符对应的索引信息。
具体地,终端根据前述步骤确定了目标字符中的识别字符与未识别字符,将未识别字符进行剔除,将各识别字符组成新的当前目标字符,再根据各识别字符对应的识别索引信息确定当前目标字符对应的索引信息。
本实施例中,通过基于字符索引表,分别对目标字符中的各个字符进行查询,再根据查询结果,从目标字符中确定识别字符与未识别字符,最后基于识别字符对应的识别索引信息,确定整个目标字符对应的索引信息,能够有效剔除目标字符中的错误字符或冗余字符,提高了确定目标字符对应的索引信息的效率。
在一个实施例中,如图4所示,根据存储位置确定并输出目标对象数据,包括:
步骤402,根据存储位置确定目标对象数据。
其中,目标对象数据可以是单个对象数据,也可以是多个对象数据
步骤404,基于目标对象数据的历史搜索数据,确定目标排列方式。
其中,历史搜索数据包括但不限于各个对象数据的历史搜索频次、历史搜索时段特征等数据,其中历史搜索时段特征用于表征对应的对象数据的历史搜索在时间上的分布特征。
步骤406,按照目标排列方式输出目标对象数据。
具体地,当目标对象数据为多个对象数据时,终端可以根据目标对象数据的历史搜索频次来确定目标对象数据中各对象数据的排列顺序,具体可以是按照历史搜索频次从高到低的方式来排序。
在另一个实施例中,还可以是终端根据目标对象数据中各对象数据的历史搜索时段特征以及当前对应的时间段,确定在当前时段下各对象数据的排列顺序,例如在上午9时至12时,根据历史搜索时段特征将目标对象数据中各对象数据排序依次设为“红色铅笔”、“黑色钢笔”、“蓝色圆珠笔”(在该时段下,“红色铅笔”的搜索频次最高,“黑色钢笔”次之,“蓝色圆珠笔”最低),而在下午2时至4时,根据历史搜索时段特征将目标对象数据中各对象数据排序依次设为“黑色钢笔”、“蓝色圆珠笔”、“红色铅笔”(在该时段下,“黑色钢笔”的搜索频次最高,“蓝色圆珠笔”次之,“红色铅笔”最低)。
本实施例中,通过基于历史搜索数据,确定目标排列方式,根据存储位置确定目标对象数据,并按照目标排列方式输出目标对象数据,从而实现根据各对象数据历史搜索数据的频次分布特点,对目标对象数据的各对象数据进行合理排列输出,有效提高用户的数据查阅效率。
在一个实施例中,如图5所示,提供了一种数据存储方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤502,获取对象列表。
其中,对象列表分行存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置,索引信息可以是表示对应对象数据在对象列表中的行列信息的序号标识。
步骤504,将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符。
其中,对象数据可以包含一个或多个字段,不同的字段分别用于表征该对象数据的一个数据属性,例如当对象数据为商品信息时,则该对象数据可以包含多个字段(如:商品编号、商品名称、商品类别等属性信息)。
具体地,终端对每个对象数据的目标字段对应的字符串进行拆分,得到该目标字段下所有字符串对应的各个字符。
举例说明,当对象数据为商品信息时,将目标字段商品名称下对应的字符串“红色铅笔”拆分为各个字符,分别为:“红”、“色”、“铅”、“笔”。
步骤506,基于每个对象数据及对应的索引信息,得到各个字符对应的索引信息。
具体地,终端将对象数据在对象列表中对应的索引信息作为该对象数据对应的各个字符的索引信息,例如若“红色铅笔”的索引信息为5,则将其对应的“红”、“色”、“铅”、“笔”的4个字符的索引信息都确定为5。
步骤508,获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合。
具体地,终端将根据前述步骤确定的各个字符中,属于同一个字符对应的索引信息,进行组合或合并得到该字符对应的索引信息集合,例如字符“笔”对应的索引信息包括1、2、5,则将索引信息集合{1、2、5}作为字符“笔”对应的索引信息集合。
步骤510,将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表。
其中,字符索引表用于根据输入的目标字符确定对应的对象数据在对象列表中的存储位置。
本实施例中,通过这种将对象列表中目标字段字符串拆分得到的字符作为字符索引表的匹配字符的方法,有效利用字符数量的有限性,极大地缩短并限定字符索引表的规模,从而使得在利用该字符索引表对大数据规模的对象列表数据查询过程中,能够快速略过大量冗余信息,不需要进行全表扫描,精准缩小了数据查询范围,从而有效提高数据查询的效率。
在一个实施例中,如图6所示,将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符,包括:
步骤602,当目标字段为单个字段时,将单个字段对应的字符串进行拆分,得到目标字段对应的各个字符。
步骤604,当目标字段为多个字段时,将多个字段对应的字符串进行合并得到合并字符串,并对合并字符串进行拆分,得到目标字段对应的各个字符。
其中,多个字段为至少两个字段。
具体地,终端获取目标字段设置指令,根据目标字段设置指令确定目标字段,当为多个字段时,将多个字段合并为一个字段,将合并后的字段作为目标字段,该目标字段包含多个字段对应的字符串进行合并得到的合并字符串,对该合并字符串进行拆分,得到目标字段对应的各个字符。
举例说明,当目标字段为商品名称与商品类别时,则将商品名称对应的字符串“红色铅笔”与商品类别对应的字符串“文具”分别进行字符拆分,得到该目标字段对应的各个字符:“红”、“色”、“铅”、“笔”、“文”、“具”。
本实施例中,当目标字段为单个字段时,将单个字段对应的字符串进行拆分,得到目标字段对应的各个字符,而当目标字段为多个字段时,将多个字段对应的字符串进行合并得到合并字符串,并对合并字符串进行拆分,得到目标字段对应的各个字符,从而实现可以根据多个字段构造目标字段,可灵活根据查询需求设置需要查询的字段的类别与数量,提高数据查询范围的可调整性。
本申请还提供了一种应用场景,该应用场景应用上述的数据查询方法,该方法应用于ERP系统单据录入界面时对商品信息进行模糊搜索的场景。具体地,该数据查询方法在该应用场景的应用如下:
针对客户商品数量过多的情况,本实施例以20万商品数量进行说明,要从20万商品中去找到包含某一个字符的商品信息,直接通过循环查找商品记录的方式,搜索数据量非常大,效率较低。
根据商品名称所具有的文字规律(市面上商品的名称均为常用汉字),非常用汉字出现在商品中非常罕见,常用汉字数量在7000以内,大多数据商业贸易性企业销售20万商品包含的中文字符不超过3500个字符,将20万商品中的中文字符分拆成单个字符,建立索引,根据上述理由可知,字符的数量不会超过7000,查询字符的范围就大幅降低,效率得到有效提升。
步骤一:终端从数据库中获取商品数据,建立如下表1所示的商品数据表,表中包含商品内码、商品编码、商品名称,具体如下表1所示:
表1
步骤二:对表1中的目标字段“商品名称”对应的各个字符串进行字符拆分,再将对应的商品内码作为索引信息,根据拆分得到的各单个字符以及对应的索引信息,得到表1对应的字符索引表,如下表2所示:
表2
步骤三:终端接收用户在前端输入框中输入的目标字符,对该目标字符进行分析,当该目标字符为单个字符时,如图7所示,终端基于该当前字符在表2的字符索引表中进行字符查询,得到该当前字符对应在字符索引表中的行列信息,再根据该行列信息中对应的索引信息确定表1商品数据表中与该当前字符对应商品信息的行列信息,进而得到对应的商品信息。当目标字符为多个字符的组合时,从第二个字符开始,直接在前一个字符查询到的内存结果中进行筛查,有效缩短查询范围,大大提高了数据查询的效率。
本实施例中,通过这种将商品数据表中目标字段对应的字符串进行拆分,再将得到的单个字符作为字符索引表的匹配字符,有效利用字符数量的有限性,极大地缩短并限定字符索引表的规模,从而使得在利用该字符索引表对大数据规模的对象列表数据查询过程中,能够快速略过大量冗余信息,不需要进行全表扫描,精准缩小了数据查询范围,从而有效提高数据查询的效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种数据查询装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:获取模块802、确定模块804、查询模块806,其中:
获取模块802,用于获取待查询的目标字符;
确定模块804,用于基于目标字符确定字符索引表中与目标字符对应的索引信息,字符索引表包含字符以及与字符对应的对象数据的索引信息,字符是基于对对象列表中目标字段对应的字符串拆分得到的,对象列表用于存储各个对象数据及对应的索引信息;
查询模块806,用于基于目标字符对应的索引信息,确定对应目标对象数据在对象列表中的存储位置;根据存储位置确定并输出目标对象数据。
在一个实施例中,确定模块804还用于按照预设顺序依次确定目标字符中的前置字符与对应的后置字符,前置字符是按照预设顺序位于前列的预设数量个字符;根据前置字符确定对应的前置索引信息;根据后置字符在对应的前置索引信息的基础上确定匹配的后置索引信息;将匹配的后置索引信息作为目标字符对应的索引信息。
在一个实施例中,确定模块804还用于基于字符索引表,分别对目标字符中的各个字符进行查询;根据查询结果,从目标字符中确定识别字符与未识别字符,识别字符为查询成功的字符,未识别字符为查询失败的字符;基于识别字符确定字符索引表中与识别字符对应的识别索引信息,并将识别索引信息作为目标字符对应的索引信息。
在一个实施例中,查询模块806还用于根据存储位置确定目标对象数据;基于目标对象数据的历史搜索数据,确定目标排列方式;按照目标排列方式输出目标对象数据。
上述数据查询装置,通过将对象列表中目标字段字符串拆分得到的字符作为字符索引表的匹配字符的方法,有效利用字符数量的有限性,极大地缩短并限定字符索引表的规模,从而使得在利用该字符索引表对大数据规模的对象列表数据查询过程中,能够快速略过大量冗余信息,不需要进行全表扫描,精准缩小了数据查询范围,从而有效提高数据查询的效率。
关于数据查询装置的具体限定可以参见上文中对于数据查询方法的限定,在此不再赘述。上述数据查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,如图9所示,提供了一种数据存储装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:获取模块902、确定模块904、存储模块906,其中:
获取模块902,用于获取对象列表,对象列表分行存储各个对象数据及对应的索引信息,索引信息用于表征对应对象数据在对象列表中的存储位置;
确定模块904,用于将每个对象数据的目标字段对应的字符串进行拆分,得到目标字段对应的各个字符;基于每个对象数据及对应的索引信息,得到各个字符对应的索引信息;获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
存储模块906,用于将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,字符索引表用于根据输入的目标字符确定对应的对象数据在对象列表中的存储位置。
在一个实施例中,确定模块904还用于当目标字段为单个字段时,将单个字段对应的字符串进行拆分,得到目标字段对应的各个字符;当目标字段为多个字段时,将多个字段对应的字符串进行合并得到合并字符串,并对合并字符串进行拆分,得到目标字段对应的各个字符,多个字段为至少两个字段。
上述数据存储装置,通过将对象列表中目标字段字符串拆分得到的字符作为字符索引表的匹配字符的方法,有效利用字符数量的有限性,极大地缩短并限定字符索引表的规模,从而使得在利用该字符索引表对大数据规模的对象列表数据查询过程中,能够快速略过大量冗余信息,不需要进行全表扫描,精准缩小了数据查询范围,从而有效提高数据查询的效率。
关于数据存储装置的具体限定可以参见上文中对于数据存储方法的限定,在此不再赘述。上述数据存储装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据查询方法或数据存储方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据查询方法,其特征在于,所述方法包括:
获取待查询的目标字符;
基于所述目标字符确定字符索引表中与所述目标字符对应的索引信息,所述字符索引表包含字符以及与所述字符对应的对象数据的索引信息,所述字符是基于对对象列表中目标字段对应的字符串拆分得到的,所述对象列表用于存储各个对象数据及对应的索引信息;
基于所述目标字符对应的索引信息,确定对应目标对象数据在所述对象列表中的存储位置;根据所述存储位置确定并输出所述目标对象数据。
2.根据权利要求1所述的方法,其特征在于,所述目标字符包括至少两个字符,所述基于所述目标字符确定字符索引表中与所述目标字符对应的索引信息,包括:
按照预设顺序依次确定所述目标字符中的前置字符与对应的后置字符,所述前置字符是按照所述预设顺序位于前列的预设数量个字符;
根据前置字符确定对应的前置索引信息;
根据后置字符在对应的前置索引信息的基础上确定匹配的后置索引信息;
将匹配的后置索引信息作为所述目标字符对应的索引信息。
3.根据权利要求1所述的方法,其特征在于,所述目标字符包括至少两个字符,所述基于所述目标字符确定字符索引表中与所述目标字符对应的索引信息,包括:
基于所述字符索引表,分别对所述目标字符中的各个字符进行查询;
根据查询结果,从所述目标字符中确定识别字符与未识别字符,所述识别字符为查询成功的字符,所述未识别字符为查询失败的字符;
基于所述识别字符确定所述字符索引表中与所述识别字符对应的识别索引信息,并将所述识别索引信息作为所述目标字符对应的索引信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述存储位置确定并输出所述目标对象数据,包括:
根据所述存储位置确定所述目标对象数据;
基于所述目标对象数据的历史搜索数据,确定目标排列方式;
按照所述目标排列方式输出所述目标对象数据。
5.一种数据存储方法,其特征在于,所述方法包括:
获取对象列表,所述对象列表分行存储各个对象数据及对应的索引信息,所述索引信息用于表征对应对象数据在所述对象列表中的存储位置;
将每个对象数据的目标字段对应的字符串进行拆分,得到所述目标字段对应的各个字符;
基于所述每个对象数据及对应的索引信息,得到各个字符对应的索引信息;
获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,所述字符索引表用于根据输入的目标字符确定对应的对象数据在所述对象列表中的存储位置。
6.根据权利要求5所述的方法,其特征在于,所述将每个对象数据的目标字段对应的字符串进行拆分,得到所述目标字段对应的各个字符,包括:
当所述目标字段为单个字段时,将所述单个字段对应的字符串进行拆分,得到所述目标字段对应的各个字符;
当所述目标字段为多个字段时,将所述多个字段对应的字符串进行合并得到合并字符串,并对所述合并字符串进行拆分,得到所述目标字段对应的各个字符,所述多个字段为至少两个字段。
7.一种数据查询装置,其特征在于,所述装置包括:
获取模块,用于获取待查询的目标字符;
确定模块,用于基于所述目标字符确定字符索引表中与所述目标字符对应的索引信息,所述字符索引表包含字符以及与所述字符对应的对象数据的索引信息,所述字符是基于对对象列表中目标字段对应的字符串拆分得到的,所述对象列表用于存储各个对象数据及对应的索引信息;
查询模块,用于基于所述目标字符对应的索引信息,确定对应目标对象数据在所述对象列表中的存储位置;根据所述存储位置确定并输出所述目标对象数据。
8.一种数据存储装置,其特征在于,所述装置包括:
获取模块,用于获取对象列表,所述对象列表分行存储各个对象数据及对应的索引信息,所述索引信息用于表征对应对象数据在所述对象列表中的存储位置;
确定模块,用于将每个对象数据的目标字段对应的字符串进行拆分,得到所述目标字段对应的各个字符;基于所述每个对象数据及对应的索引信息,得到各个字符对应的索引信息;获取同一个字符对应的索引信息,并进行组合得到对应的索引信息集合;
存储模块,用于将各个字符以及对应的索引信息集合进行关联,并将关联结果分行存储至字符索引表,所述字符索引表用于根据输入的目标字符确定对应的对象数据在所述对象列表中的存储位置。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4或5至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4或5至6中任一项所述的方法的步骤。
CN202310740022.0A 2023-06-20 2023-06-20 数据查询方法、装置、计算机设备及计算机可读存储介质 Pending CN116561181A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310740022.0A CN116561181A (zh) 2023-06-20 2023-06-20 数据查询方法、装置、计算机设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310740022.0A CN116561181A (zh) 2023-06-20 2023-06-20 数据查询方法、装置、计算机设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN116561181A true CN116561181A (zh) 2023-08-08

Family

ID=87488137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310740022.0A Pending CN116561181A (zh) 2023-06-20 2023-06-20 数据查询方法、装置、计算机设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN116561181A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117851341A (zh) * 2023-11-23 2024-04-09 广州鼎甲计算机科技有限公司 元数据索引方法、装置、计算机设备和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117851341A (zh) * 2023-11-23 2024-04-09 广州鼎甲计算机科技有限公司 元数据索引方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
US9418144B2 (en) Similar document detection and electronic discovery
CN107016001B (zh) 一种数据查询方法及装置
US8924373B2 (en) Query plans with parameter markers in place of object identifiers
US9501474B2 (en) Enhanced use of tags when storing relationship information of enterprise objects
CN110659282B (zh) 数据路由的构建方法、装置、计算机设备和存储介质
US20160055212A1 (en) Automatic joining of data sets based on statistics of field values in the data sets
CN106909609B (zh) 确定相似字符串的方法、文件查重的方法及系统
US10699112B1 (en) Identification of key segments in document images
CN111506608A (zh) 一种结构化文本的比较方法和装置
CN116561181A (zh) 数据查询方法、装置、计算机设备及计算机可读存储介质
CN110879799B (zh) 标注技术元数据的方法和装置
US9898523B2 (en) Tabular data parsing in document(s)
CN111190896B (zh) 数据处理方法、装置、存储介质和计算机设备
CN111008198A (zh) 业务数据获取方法、装置、存储介质、电子设备
CN116414854A (zh) 数据资产查询方法、装置、计算机设备和存储介质
US8856126B2 (en) Simplifying grouping of data items stored in a database
CN115658680A (zh) 数据存储方法、数据查询方法和相关装置
CN112214494B (zh) 检索方法及装置
US11170164B2 (en) System and method for cell comparison between spreadsheets
KR102062139B1 (ko) 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치
CN116578583B (zh) 异常语句识别方法、装置、设备、存储介质
CN116702024B (zh) 流水数据类型识别方法、装置、计算机设备和存储介质
US9201857B2 (en) Finding multiple field groupings in semi-structured documents
CN117555955B (zh) 数据转换方法、数据转换装置、计算机设备、存储介质
US20230325418A1 (en) System and Method for Joining Datasets

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