本公开涉及计算机,尤其涉及数据库。
背景技术:
1、随着互联网技术的发展,通过互联网获取信息,生活、娱乐和工作成为人们生活的一部分。商家为了提高知名度,推广商品,往往通过互联网检索数据库投放广告。
2、现有的数据库检索效率较低,广告推荐的精确度不高。
技术实现思路
1、本公开提供了一种用于数据库检索的方法、装置、设备以及存储介质。
2、根据本公开的第一方面,提供了一种数据库检索的方法,包括:
3、对预先设置的检索语句进行编译,以生成检索代码;
4、将所述检索代码部署在数据库中;
5、接收检索请求,根据所述检索请求确定目标检索代码,并根据所述目标检索代码检索所述数据库以生成检索结果。
6、可选的,所述对预先设置的检索语句进行编译,包括:
7、解析所述检索语句的词法,获取第一逻辑计划;
8、对所述第一逻辑计划进行优化,获取第二逻辑计划;
9、将所述第二逻辑计划转换为执行逻辑;
10、根据所述执行逻辑生成所述检索代码。
11、可选的,所述解析所述检索语句的词法,获取第一逻辑计划,包括:
12、提取所述检索语句对应的检索词;
13、根据所述检索词生成所述第一逻辑计划。
14、可选的,所述方法还包括:
15、检索所述检索词的优先级信息;
16、根据所述优先级信息确定所述检索词对应的检索层级。
17、可选的,所述方法还包括:
18、检查所述检索语句相关的数据表;
19、如果所述检索语句涉及至少两个数据表,则将所述检索语句对应的数据表调度到同一个数据库中。
20、可选的,所述根据所述目标检索代码检索所述数据库以生成检索结果,包括:
21、根据所述目标检索代码中检索层级确定检索顺序,其中,所述检索顺序为所述检索词的顺序;
22、根据所述检索顺序调用所述检索词依次对所述数据库进行检索,并存储每次检索的检索结果。
23、可选的,所述检索词包括谓词和选择词。
24、可选的,所述检索层级包括以下至少一项:
25、账户,计划,单元,关键词,素材。
26、根据本公开的第二方面,提供了一种数据库检索的装置,包括:
27、编译模块,用于对预先设置的检索语句进行编译,以生成检索代码;
28、部署模块,用于将所述检索代码部署在数据库中;
29、检索模块,用于接收检索请求,根据所述检索请求确定目标检索代码,并根据所述目标检索代码检索所述数据库以生成检索结果。
30、可选的,所述编译模块包括:
31、第一解析模块,用于解析所述检索语句的词法,获取第一逻辑计划;
32、第二解析模块,用于对所述第一逻辑计划进行优化,获取第二逻辑计划;
33、转换模块,用于将所述第二逻辑计划转换为执行逻辑;
34、代码生成模块,用于根据所述执行逻辑生成所述检索代码。
35、可选的,所述第一解析模块包括:
36、提取模块,用于提取所述检索语句对应的检索词;
37、计划生成模块,用于根据所述检索词生成所述第一逻辑计划。
38、可选的,所述装置还包括:
39、优先级确定模块,用于检索所述检索词的优先级信息;
40、检索层级确定模块,用于根据所述优先级信息确定所述检索词对应的检索层级。
41、可选的,所述装置还包括:
42、表检查模块,用于检查所述检索语句相关的数据表;
43、调度模块,如果所述检索语句涉及至少两个数据表,则将所述检索语句对应的数据表调度到同一个数据库中。
44、可选的,所述检索模块包括:
45、检索顺序确定模块,用于根据所述目标检索代码中检索层级确定检索顺序,其中,所述检索顺序为所述检索词的顺序;
46、检索执行模块,用于根据所述检索顺序调用所述检索词依次对所述数据库进行检索,并存储每次检索的检索结果。
47、可选的,所述检索词包括谓词和选择词。
48、可选的,所述检索层级包括以下至少一项:
49、账户,计划,单元,关键词,素材。
50、根据本公开的第三方面,提供了一种电子设备,包括:
51、至少一个处理器;以及
52、与所述至少一个处理器通信连接的存储器;其中,
53、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面中任一项所述的方法。
54、根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面中任一项所述的方法。
55、根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据第一方面中任一项所述的方法。
56、通过本
技术实现要素:
可以实现以下有益效果:
57、通过预先与检索语句进行编译,生成检索代码,在检索时只需要调用配置好的检索代码进行检索,降低了检索的延迟,提高了检索效率。
58、通过预先编译的检索代码,在检索时无需重新对检索语句进行编译,检索代码更适合在电脑上运行,提高了对数据库的检索效率。
59、通过检索词的优先级确定检索顺序,实现了对数据库的分层检索,在同一大层级下的小层级进行检索时可以重复利用检索结果,提高了检索效率。
60、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
1.一种数据库检索的方法,包括:
2.根据权利要求1所述的方法,其中,所述对预先设置的检索语句进行编译,包括:
3.根据权利要求1所述的方法,其中,所述解析所述检索语句的词法,获取第一逻辑计划,包括:
4.根据权利要求3所述的方法,其中,所述方法还包括:
5.根据权利要求1-4中任意一项所述的方法,其中,所述方法还包括:
6.根据权利要求4所述的方法,其中,所述根据所述目标检索代码检索所述数据库以生成检索结果,包括:
7.根据权利要求6所述的方法,其中,所述检索词包括谓词和选择词。
8.根据权利要求7所述的方法,其中,所述检索层级包括以下至少一项:
9.一种数据库检索的装置,包括:
10.根据权利要求9所述的装置,其中,所述编译模块包括:
11.根据权利要求9所述的装置,其中,所述第一解析模块包括:
12.根据权利要求11所述的装置,其中,所述装置还包括:
13.根据权利要求9-12中任意一项所述的装置,其中,所述装置还包括:
14.根据权利要求12所述的装置,其中,所述检索模块包括:
15.根据权利要求14所述的装置,其中,所述检索词包括谓词和选择词。
16.根据权利要求15所述的装置,其中,所述检索层级包括以下至少一项:
17.一种电子设备,包括:
18.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-8中任一项所述的方法。
19.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-8中任一项所述的方法。
20.一种数据库,其特征在于,所述数据库用于执行根据权利要求1-8中任一项所述的方法。