CN110019295B - 数据库检索方法、装置、***以及存储介质 - Google Patents
数据库检索方法、装置、***以及存储介质 Download PDFInfo
- Publication number
- CN110019295B CN110019295B CN201710874615.0A CN201710874615A CN110019295B CN 110019295 B CN110019295 B CN 110019295B CN 201710874615 A CN201710874615 A CN 201710874615A CN 110019295 B CN110019295 B CN 110019295B
- Authority
- CN
- China
- Prior art keywords
- retrieval
- condition
- sub
- search
- target sub
- 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.)
- Active
Links
Images
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/2425—Iterative querying; Query formulation based on the results of a preceding query
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据库检索方法、装置、***以及存储介质,该方法包括:当接收到携带有第一检索条件的检索请求时,对第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于第一检索条件对应的检索结果的数量;使用第二检索条件进行检索,获得第一检索结果;确定第一检索结果中与所述第一检索条件匹配的第二检索结果。基于本发明公开的方法,可以先放宽第一检索条件得到第二检索条件,再用第二检索条件进行检索,这就保证符合第一检索条件的文本全部在第一检索结果中,再从中确定与第一检索条件匹配的第二检索结果,保证最终得到的第二检索结果既全面又准确,从而提高检索精确度。
Description
技术领域
本发明涉及自然语言处理领域,尤其涉及一种数据库检索方法、装置、***以及存储介质。
背景技术
分布式数据库,如Elastic Search数据库,拥有强大的全文索引能力,可接近实时处理全文检索请求。
目前,需要在Elastic Search数据库中精确匹配某一内容时,主要采用分词手段进行Elastic Search数据库检索:首先对检索条件和Elastic Search数据库中的文本进行分词,然后再利用检索条件分词结果和文本分词结果进行匹配,从Elastic Search数据库中查找到符合检索条件的目标文本。
但是,由于检索条件分词结果中会重复出现检索条件末尾字符,这就容易出现本来符合检索条件的文本未被检索到的情况,从而导致检索精确度很低。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据库检索方法、装置、***以及存储介质。
具体技术方案如下:
一种数据库检索方法,包括:
当接收到携带有第一检索条件的检索请求时,对所述第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于所述第一检索条件对应的检索结果的数量;
使用所述第二检索条件进行检索,获得第一检索结果;
确定所述第一检索结果中与所述第一检索条件匹配的第二检索结果。
优选的,所述对所述第一检索条件进行处理,得到第二检索条件,包括:
确定所述第一检索条件中的检索子条件及各检索子条件间的逻辑关系,所述第一检索条件中的检索子条件由检索文本构成或者由逻辑非和检索文本构成;
对于至少一个所述检索子条件,确定该检索子条件中的目标子条件;
对至少一个所述目标子条件,对该目标子条件进行删减处理,将删减后的目标子条件替换该目标子条件,得到第二检索条件。
优选的,对于包含逻辑非的每一个检索子条件,所述确定该检索子条件中的目标子条件,包括:
将该包含逻辑非的检索子条件确定为目标子条件;
所述对该目标子条件进行删减处理,包括:
对该目标子条件的检索文本进行分词,得到至少一个第一检索词;
判断所有所述第一检索词是否覆盖该目标子条件的检索文本;
若否,删除所述目标子条件。
优选的,对于不包含逻辑非的每一个检索子条件,所述确定该检索子条件中的目标子条件,包括:
对该不包含逻辑非的检索子条件的检索文本进行分词,得到至少一个第二检索词;
判断所述至少一个第二检索词中是否存在末尾字符与所述检索文本末尾字符相同的第二检索词,所述末尾字符与所述检索文本末尾字符相同的第二检索词中包含至少两个字符;
若是,将所述末尾字符与所述检索文本末尾字符相同的第二检索词和该检索子条件的检索文本中剩余的各个第二检索词间通过逻辑与关联,构成目标子条件;
所述对该目标子条件进行删减处理,包括:
将该目标子条件中末尾字符与所述检索文本末尾字符相同的第二检索词的末尾字符删除。
优选的,还包括:
对删除末尾字符的各个第二检索词进行去重处理。
一种数据库检索装置,包括:条件处理模块、检索模块和匹配模块;
所述条件处理模块,用于当接收到携带有第一检索条件的检索请求时,对所述第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于所述第一检索条件对应的检索结果的数量;
所述检索模块,用于使用所述第二检索条件进行检索,获得第一检索结果;
所述匹配模块,用于确定所述第一检索结果中与所述第一检索条件匹配的第二检索结果。
优选的,所述条件处理模块,具体用于:
确定所述第一检索条件中的检索子条件及各检索子条件间的逻辑关系,所述第一检索条件中的检索子条件由检索文本构成或者由逻辑非和检索文本构成;对于至少一个所述检索子条件,确定该检索子条件中的目标子条件;对至少一个所述目标子条件,对该目标子条件进行删减处理,将删减后的目标子条件替换该目标子条件,得到第二检索条件。
优选的,对于包含逻辑非的每一个检索子条件,所述条件处理模块,具体用于:
将该包含逻辑非的检索子条件确定为目标子条件;对该目标子条件的检索文本进行分词,得到至少一个第一检索词;判断所有所述第一检索词是否覆盖该目标子条件的检索文本;若否,删除所述目标子条件。
一种数据库检索***,包括:
存储器,用于存储程序;
处理器,用于执行所述程序,所述程序运行时执行上述技术方案中任意一项所述的数据库检索方法。
一种存储介质,其特征在于,其上存储有程序,所述程序被处理器执行时实现如权利要求上述技术方案中任意一项所述的数据库检索方法。
借由上述技术方案,本发明提供的数据库检索方法、装置、***以及存储介质,可以放宽检索条件中的第一检索条件,得到第二检索条件;然后使用第二检索条件在数据库中进行检索,得到第一检索结果;最后,从第一检索结果中确定与第一检索条件相匹配的第二检索结果。
由于本发明可以先放宽第一检索条件得到第二检索条件,再用第二检索条件进行检索,这就保证符合第一检索条件的文本全部在第一检索结果中,再从中确定与第一检索条件匹配的第二检索结果,保证最终得到的第二检索结果既全面又准确,从而提高检索精确度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了数据库检索方法的方法流程图;
图2示出了数据库检索方法的部分方法流程图;
图3示出了数据库检索方法的又一部分方法流程图;
图4示出了数据库检索方法的再一部分方法流程图;
图5示出了数据库检索装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,本发明实施例提供一种数据库检索方法,可以包括如下步骤:
S10,当接收到携带有第一检索条件的检索请求时,对第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于第一检索条件对应的检索结果的数量;
在执行步骤S10的过程中,第一检索条件是由检索子条件以及各检索子条件间的逻辑关系构成的,目前逻辑关系分为与逻辑和或逻辑两种,而检索子条件由检索文本或者逻辑非和检索文本构成;在对第一检索条件进行处理的过程中,可分别对每一个检索子条件依次进行处理,再组合处理后的各个检索子条件,从而得到检索结果的数量不小于第一检索条件的第二检索条件。
在具体实现过程中,步骤S10中“对第一检索条件进行处理,得到第二检索条件”可以具体采用以下步骤,方法流程图如图2所示:
S101,确定第一检索条件中的检索子条件及各检索子条件间的逻辑关系,所述第一检索条件中的检索子条件由检索文本构成或者由逻辑非和检索文本构成;
在执行步骤S101的过程中,由于在分词的过程中,会自动去掉检索文本中所包含的标点符号,因此,采用包含有逻辑非的检索子条件来检索时,会出现文本漏检的情况。
例如,检索子条件A由逻辑非和检索文本“阳光。明媚”构成,检索文本的分词结果为“阳光”、“光明”、“明媚”和“媚”,再对分词结果进行组合所得到的检索文本为“阳光明媚”,因此分词后所构成的检索子条件B是由逻辑非和检索文本“阳光明媚”构成的。可以看出,数据库中原本符合检索子条件A,例如包含“阳光明媚”的文本C不能被检索子条件B检索到。
因此,由于检索子条件中非逻辑的特殊性,为放宽由逻辑非和检索文本构成的检索子条件,需对该检索子条件中的检索文本进行删减处理;而对于由检索文本构成的检索子条件,只需要放宽该检索子条件中的检索文本即可。
S102,对于至少一个检索子条件,确定该检索子条件中的目标子条件;
在执行步骤S102的过程中,由于对于包含逻辑非和不包含逻辑非的检索子条件放宽手段不同,相应对于检索子条件中检索文本的处理过程也不同。
对于包含逻辑非的检索子条件,为放宽该检索子条件,需对检索文本进行删减,而删减规则与检索文本中的标点符号位置有关系,例如,对于上述检索子条件A来说,删除检索文本“阳光。明媚”中的“阳”之后并不能使包含“阳光明媚”的文本C被检索到。因此,可设置与标点符号有关的删减规则,具体的,可删除某个标点符号之前的所有检索文本,又比如,可删除某个标点符号之后的所有文本,本实施例不做具体限定,可根据实际需要进行选择。
而对于不包含逻辑非的检索子条件,也就是由检索文本所构成的检索子条件来说,只需要放宽其中检索文本的检索范围即可。例如,对于由“阳光明媚”这一检索文本所构成的检索子条件D来说,可将检索子条件放宽为由“阳光”和“明媚”以及两者之间的逻辑与构成的子条件,因为这不但可以将包含“阳光明媚”的文本C检索到,也可将其中包含“阳光”和“明媚”的检索文本E检索到。
对于包含不逻辑非的每一个检索子条件,S102中“确定该检索子条件中的目标子条件”可以具体采用以下步骤,方法流程图如图3所示:
S1001,对该不包含逻辑非的检索子条件的检索文本进行分词,得到至少一个第二检索词;
在执行步骤S1001的过程中,对于检索子条件D来说,对检索文本“阳光明媚”进行分词,分词所得到的各个第二检索词分别为“阳光”、“光明”、“明媚”和“媚”。
S1002,判断至少一个第二检索词中是否存在末尾字符与检索文本末尾字符相同的第二检索词,所述末尾字符与检索文本末尾字符相同的第二检索词中包含至少两个字符;
在执行步骤S1002的过程中,对于步骤S1001中对检索子条件D进行分词的结果进行分词,可确定第二检索词“明媚”的末尾字符和检索文本末尾字符“媚”相同。
当然,除了上述检索子条件D这一类分词结果中只有一个第二检索词的末尾字符与检索文本末尾字符相同的检索子条件,还包含另一类检索子条件,其分词结果中末尾字符与检索文本末尾字符相同的第二检索词至少存在两个,例如,对于检索子条件E“310ww”,其分词结果为“310ww”、“310w”、“310”和“w”,其中,第二检索词“310ww”和“310w”的末尾字符均与检索文本“310ww”的末尾字符“w”相同。
S1003,若是,将末尾字符与检索文本末尾字符相同的第二检索词和该检索子条件的检索文本中剩余的各个第二检索词间通过逻辑与关联,构成目标子条件;
在执行步骤S1003的过程中,对于上述检索条件D来说,其目标子条件由“阳光”、“光明”、“明媚”和“媚”及各第二检索词之间的逻辑与构成;对于上述检索子条件E来说,其目标子条件由“310ww”、“310w”、“310”和“w”及各第二检索词之间的逻辑与构成。
S103,对至少一个目标子条件,对该目标子条件进行删减处理,将删减后的目标子条件替换该目标子条件,得到第二检索条件。
在执行步骤S103的过程中,对于包含逻辑非的每一个检索子条件,优选的,可将该检索子条件确定为目标子条件,则步骤S103中“对该目标子条件进行删减处理”可以具体采用以下步骤,方法流程图如图4所示:
S1004,对该目标子条件的检索文本进行分词,得到至少一个第一检索词;
在执行步骤S1004的过程中,对于检索子条件A来说,将检索子条件A确定为目标子条件,进一步,对检索子条件A中所包含的检索文本“阳光。明媚”进行分词,所得到的第一检索词有“阳光”、“光明”、“明媚”和“媚”。
S1005,判断所有第一检索词是否覆盖该目标子条件的检索文本;若否,则执行步骤S1006;
在执行步骤S1005的过程中,对步骤S1004中所得到的各第一检索词“阳光”、“光明”、“明媚”和“媚”进行组合,组合所得到的检索文本为“阳光明媚”,判断检索文本“阳光明媚”是否等于检索子条件A中的检索文本“阳光。明媚”,显而易见,并不等于,检索文本“阳光。明媚”中多一个标点符号“。”,可对目标子条件全部删减。
S1006,删除目标子条件。
需要说明的是,若所有第一检索词能覆盖该目标子条件的检索文本,则对该目标子条件不做任何处理。
对于包含不逻辑非的每一个检索子条件,S103中“对该目标子条件进行删减处理”可以具体采用以下步骤:
将该目标子条件中末尾字符与检索文本末尾字符相同的第二检索词的末尾字符删除;
具体的,对于检索条件D来说,其目标子条件中所包含的第二检索词有“阳光”、“光明”、“明媚”和“媚”,可将“明媚”这一第二检索词的末尾字符去掉;而对于检索条件E来说,其目标子条件中所包含的第二检索词有“310ww”、“310w”、“310”和“w”,可将“310ww”和“310w”这两个第二检索词的末尾字符去掉,得到“310w”和“310”,但是对于删除一次末尾字符的第二检索词“310ww”来说,由于其得到的“310w”的末尾字符还与检索文本末尾字符“w”相同,因此,还可进一步去掉“310w”的末尾字符,直至除第二检索词“w”之外没有第二检索词的末尾字符与检索文本末尾字符相同。
当然,对检索条件D执行上述删减操作会得到“310”“310”“310”这三个删除末尾字符的第二检索词,因此,优选的,还可对上述几个删除末尾字符的各个第二检索词进行去重处理,去掉两个“310”。
S20,使用第二检索条件进行检索,获得第一检索结果;
在执行步骤S20的过程中,可按照现有技术方案,对第二检索条件和数据库中的文本进行分词,然后再利用第二检索条件分词结果和文本分词结果进行匹配,从数据库中查找符合第二检索条件的文本。
S30,确定第一检索结果中与第一检索条件匹配的第二检索结果;
在执行步骤S30的过程中,可利用第一检索条件对检索到的文本依次进行校验,若校验通过,也就是符合第一检索条件,则完成匹配。
以上步骤S101~步骤S103仅仅是本申请实施例公开的步骤S10中“对第一检索条件进行处理,得到第二检索条件”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
以上步骤S1001~步骤S1003仅仅是本申请实施例公开的步骤S102中“确定该检索子条件中的目标子条件”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
以上步骤S1004~步骤S1006仅仅是本申请实施例公开的步骤S103中“对该目标子条件进行删减处理”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
本发明实施例提供的数据库检索方法,可以先放宽第一检索条件得到第二检索条件,再用第二检索条件进行检索,这就保证符合第一检索条件的文本全部在第一检索结果中,再从中确定与第一检索条件匹配的第二检索结果,保证最终得到的第二检索结果既全面又准确,从而提高检索精确度。
上述实施例所提供的数据库检索方法可具体应用于Elastic Search数据数据库中,在Elastic Search数据库进行检索时,可对检索条件中的第一检索条件进行放宽处理,得到检索结果的数据不少于第一检索条件的第二检索条件;进而利用此第二检索条件在Elastic Search数据中进行检索,检索过程具体为:首先对第二检索条件和ElasticSearch数据库中的文本进行分词,然后再利用第二检索条件分词结果和文本分词结果进行匹配,从Elastic Search数据库中查找到符合第二检索条件的目标文本;最后,确定第一检索结果中与第一检索条件匹配的第二检索结果,也就是说,从目标文本中选取符合第一检索条件的文本。
基于上述实施例提供的数据库检索方法,本发明实施例则对应提供执行上述数据库检索方法的装置,其结构示意图如图5所示,包括:条件处理模块10、检索模块20和匹配模块30;
条件处理模块10,用于当接收到携带有第一检索条件的检索请求时,对第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于第一检索条件对应的检索结果的数量;
检索模块20,用于使用第二检索条件进行检索,获得第一检索结果;
匹配模块30,用于确定第一检索结果中与第一检索条件匹配的第二检索结果。
可选的,条件处理模块10,具体用于:
确定第一检索条件中的检索子条件及各检索子条件间的逻辑关系,第一检索条件中的检索子条件由检索文本构成或者由逻辑非和检索文本构成;对于至少一个检索子条件,确定该检索子条件中的目标子条件;对至少一个目标子条件,对该目标子条件进行删减处理,将删减后的目标子条件替换该目标子条件,得到第二检索条件。
可选的,对于包含逻辑非的每一个检索子条件,所述条件处理模块,具体用于:
将该包含逻辑非的检索子条件确定为目标子条件;对该目标子条件的检索文本进行分词,得到至少一个第一检索词;判断所有所述第一检索词是否覆盖该目标子条件的检索文本;若否,删除所述目标子条件。
本发明实施例提供的数据库检索装置,可以先放宽第一检索条件得到第二检索条件,再用第二检索条件进行检索,这就保证符合第一检索条件的文本全部在第一检索结果中,再从中确定与第一检索条件匹配的第二检索结果,保证最终得到的第二检索结果既全面又准确,从而提高检索精确度。
数据库检索***包括处理器和存储器,上述条件处理模块、检索模块和匹配模块均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来精确检索文本。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(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 (6)
1.一种数据库检索方法,其特征在于,包括:
当接收到携带有第一检索条件的检索请求时,对所述第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于所述第一检索条件对应的检索结果的数量;
使用所述第二检索条件进行检索,获得第一检索结果;
确定所述第一检索结果中与所述第一检索条件匹配的第二检索结果;
其中,所述对所述第一检索条件进行处理,得到第二检索条件,包括:
确定所述第一检索条件中的检索子条件及各检索子条件间的逻辑关系,所述第一检索条件中的检索子条件由检索文本构成或者由逻辑非和检索文本构成;
对于至少一个所述检索子条件,确定该检索子条件中的目标子条件;
对至少一个所述目标子条件,对该目标子条件进行删减处理,将删减后的目标子条件替换该目标子条件,得到第二检索条件;
其中,对于包含逻辑非的每一个检索子条件,所述确定该检索子条件中的目标子条件,包括:
将该包含逻辑非的检索子条件确定为目标子条件;
所述对该目标子条件进行删减处理,包括:
对该目标子条件的检索文本进行分词,得到至少一个第一检索词;
判断所有所述第一检索词是否覆盖该目标子条件的检索文本;
若否,删除所述目标子条件。
2.根据权利要求1所述的方法,其特征在于,对于不包含逻辑非的每一个检索子条件,所述确定该检索子条件中的目标子条件,包括:
对该不包含逻辑非的检索子条件的检索文本进行分词,得到至少一个第二检索词;
判断所述至少一个第二检索词中是否存在末尾字符与所述检索文本末尾字符相同的第二检索词,所述末尾字符与所述检索文本末尾字符相同的第二检索词中包含至少两个字符;
若是,将所述末尾字符与所述检索文本末尾字符相同的第二检索词和该检索子条件的检索文本中剩余的各个第二检索词间通过逻辑与关联,构成目标子条件;
所述对该目标子条件进行删减处理,包括:
将该目标子条件中末尾字符与所述检索文本末尾字符相同的第二检索词的末尾字符删除。
3.根据权利要求2所述的方法,其特征在于,还包括:
对删除末尾字符的各个第二检索词进行去重处理。
4.一种数据库检索装置,其特征在于,包括:条件处理模块、检索模块和匹配模块;
所述条件处理模块,用于当接收到携带有第一检索条件的检索请求时,对所述第一检索条件进行处理,得到第二检索条件,所述第二检索条件对应的检索结果的数量不少于所述第一检索条件对应的检索结果的数量;
所述检索模块,用于使用所述第二检索条件进行检索,获得第一检索结果;
所述匹配模块,用于确定所述第一检索结果中与所述第一检索条件匹配的第二检索结果;
其中,所述条件处理模块,具体用于:
确定所述第一检索条件中的检索子条件及各检索子条件间的逻辑关系,所述第一检索条件中的检索子条件由检索文本构成或者由逻辑非和检索文本构成;对于至少一个所述检索子条件,确定该检索子条件中的目标子条件;对至少一个所述目标子条件,对该目标子条件进行删减处理,将删减后的目标子条件替换该目标子条件,得到第二检索条件;
其中,对于包含逻辑非的每一个检索子条件,所述条件处理模块,具体用于:
将该包含逻辑非的检索子条件确定为目标子条件;对该目标子条件的检索文本进行分词,得到至少一个第一检索词;判断所有所述第一检索词是否覆盖该目标子条件的检索文本;若否,删除所述目标子条件。
5.一种数据库检索***,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述程序,所述程序运行时执行权利要求1至3中任意一项所述的数据库检索方法。
6.一种存储介质,其特征在于,其上存储有程序,所述程序被处理器执行时实现如权利要求1至3中任意一项所述的数据库检索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710874615.0A CN110019295B (zh) | 2017-09-25 | 2017-09-25 | 数据库检索方法、装置、***以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710874615.0A CN110019295B (zh) | 2017-09-25 | 2017-09-25 | 数据库检索方法、装置、***以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110019295A CN110019295A (zh) | 2019-07-16 |
CN110019295B true CN110019295B (zh) | 2021-07-27 |
Family
ID=67186360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710874615.0A Active CN110019295B (zh) | 2017-09-25 | 2017-09-25 | 数据库检索方法、装置、***以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019295B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110413307B (zh) * | 2019-07-26 | 2023-11-24 | 网易(杭州)网络有限公司 | 代码功能的关联方法、装置及电子设备 |
CN112256741A (zh) * | 2020-09-07 | 2021-01-22 | 长沙市到家悠享网络科技有限公司 | 一种供求匹配方法、装置、电子设备以及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104011713A (zh) * | 2011-12-28 | 2014-08-27 | 乐天株式会社 | 检索装置、检索方法、检索程序以及记录介质 |
CN104156454A (zh) * | 2014-08-18 | 2014-11-19 | 腾讯科技(深圳)有限公司 | 搜索词的纠错方法和装置 |
CN104268175A (zh) * | 2014-09-15 | 2015-01-07 | 乐视网信息技术(北京)股份有限公司 | 一种数据搜索的装置及其方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101679011B1 (ko) * | 2014-06-26 | 2016-11-24 | 주식회사 알티베이스 | 데이터베이스에서 데이터 이동을 처리하는 방법 및 장치 |
-
2017
- 2017-09-25 CN CN201710874615.0A patent/CN110019295B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104011713A (zh) * | 2011-12-28 | 2014-08-27 | 乐天株式会社 | 检索装置、检索方法、检索程序以及记录介质 |
CN104156454A (zh) * | 2014-08-18 | 2014-11-19 | 腾讯科技(深圳)有限公司 | 搜索词的纠错方法和装置 |
CN104268175A (zh) * | 2014-09-15 | 2015-01-07 | 乐视网信息技术(北京)股份有限公司 | 一种数据搜索的装置及其方法 |
Non-Patent Citations (1)
Title |
---|
赵旭;搜索引擎关键技术研究及性能优化;《中国优秀硕士学位论文全文数据库信息科技辑》;20090315;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110019295A (zh) | 2019-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106649346B (zh) | 数据重复性校验方法及装置 | |
US8468146B2 (en) | System and method for creating search index on cloud database | |
CN106897342B (zh) | 一种数据校验方法和设备 | |
CN109597982B (zh) | 摘要文本识别方法及装置 | |
CN106648839B (zh) | 数据处理的方法和装置 | |
CN110019295B (zh) | 数据库检索方法、装置、***以及存储介质 | |
CN107577660B (zh) | 类目信息识别方法、装置及服务器 | |
CN108108379B (zh) | 关键词拓词的方法及装置 | |
CN108255891B (zh) | 一种判别网页类型的方法及装置 | |
CN111026736B (zh) | 数据血缘管理方法及装置、数据血缘解析方法及装置 | |
CN110889424B (zh) | 向量索引建立方法及装置和向量检索方法及装置 | |
CN107562533B (zh) | 一种数据加载处理方法及装置 | |
CN109558580B (zh) | 一种文本分析方法及装置 | |
CN116028626A (zh) | 文本匹配方法、装置、存储介质以及电子设备 | |
CN111125087A (zh) | 数据的存储方法及装置 | |
US10198209B2 (en) | Memory storage recycling | |
CN106776654B (zh) | 一种数据搜索方法及装置 | |
CN109146395B (zh) | 一种数据处理的方法、装置及设备 | |
CN112579774A (zh) | 模型训练方法、模型训练装置及终端设备 | |
CN108121719B (zh) | 一种实现数据抽取转换加载etl的方法及装置 | |
CN113392628A (zh) | 一种文本解析结果的核查方法及装置 | |
CN110941604B (zh) | 一种数据存储方法及装置 | |
CN111125165A (zh) | 集合的合并方法、装置、处理器及机器可读存储介质 | |
CN110968758B (zh) | 网页数据的爬取方法及装置 | |
CN110908998B (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: 100080 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. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |