数据查询方法及相关装置与流程

文档序号:29087780发布日期:2022-03-02 01:52阅读:121来源:国知局
数据查询方法及相关装置与流程

1.本技术涉及互联网产业的一般数据处理技术领域,具体涉及一种数据查询方法及相关装置。


背景技术:

2.金融数据涉及金融领域的股票、期权、期货等多个方面,以及每个交易日从开盘到收盘的数据记录。随着经济发展,金融数据的数据量日益增加,同时,用户对海量数据的快速精准查询的需求越来越高。
3.目前,主要通过服务器直接访问数据库的方式来进行数据查询。然而,由于数据库中存储的数据量较大,直接在数据库中进行数据查询的方式数据查询效率较低,且难以确保数据查询的准确度,用户体验较差。


技术实现要素:

4.本技术实施例提供了一种数据查询方法及相关装置,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
5.第一方面,本技术实施例提供一种数据查询方法,包括:获取用户输入的数据查询请求,所述数据查询请求用于查询业务对象对应的业务数据;确定所述数据查询请求对应的查询标识;根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态,所述业务数据状态用于指示所述业务数据是否存在;在所述业务数据状态指示存在所述业务数据的情况下,根据所述查询标识查询所述业务数据。
6.第二方面,本技术实施例提供一种数据查询装置,包括:获取单元、确定单元和查询单元,其中,所述获取单元,用于获取用户输入的数据查询请求,所述数据查询请求用于查询业务对象对应的业务数据;所述确定单元,用于确定所述数据查询请求对应的查询标识;所述确定单元,还用于根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态,所述业务数据状态用于指示所述业务数据是否存在;所述查询单元,用于在所述业务数据状态指示存在所述业务数据的情况下,根据所述查询标识查询所述业务数据。
7.第三方面,本技术实施例提供了一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本技术实施例第一方面中的步骤的指令。
8.第四方面,本技术实施例提供了一种计算机可读存储介质,其中,上述计算机可读
存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本技术实施例第一方面中所描述的部分或全部步骤的指令。
9.第五方面,本技术实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本技术实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
10.实施本技术实施例,具备如下有益效果:可以看出,本技术实施例中所描述的数据查询方法及相关装置,可获取用户输入的数据查询请求,确定数据查询请求对应的查询标识,根据查询标识和预设的业务数据状态表,确定查询标识对应的业务数据状态,在业务数据状态指示存在业务数据的情况下,根据查询标识查询业务数据;如此,通过查询标识和预设的业务数据状态表,在查询业务数据之前,先确定业务数据状态,在业务数据状态指示存在业务数据的情况下,再根据查询标识查询业务数据,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
附图说明
11.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
12.图1a是本技术实施例提供的一种电子设备的结构示意图;图1b是本技术实施例提供的一种数据查询方法的流程示意图;图2是本技术实施例提供的一种电子设备的结构示意图;图3a是本技术实施例提供的一种数据查询装置的功能单元组成框图;图3b是本技术实施例提供的一种数据查询装置的功能单元组成框图;图3c是本技术实施例提供的一种数据查询装置的功能单元组成框图。
具体实施方式
13.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
14.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
15.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员
在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
16.本技术涉及到的关键概念和术语包括但不限于以下:(1)业务对象,可指股票、期货、利率、信贷、汇率等金融领域对应的业务。
17.(2)业务数据状态表,可以用于查询业务对象对应的业务数据状态。业务数据状态表可以是数组、表格、公式、函数等形式,在此不做限定。
18.(3)电子设备可以是包含其它功能诸如个人数字助理和/或音乐播放器功能的便携式电子设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴电子设备(如智能手表)等。便携式电子设备的示例性实施例包括但不限于搭载ios系统、android系统、microsoft系统或者其它操作系统的便携式电子设备。上述便携式电子设备也可以是其它便携式电子设备,诸如膝上型计算机(laptop)等。还应当理解的是,在其他一些实施例中,上述电子设备也可以不是便携式电子设备,而是台式计算机。电子设备还可以包括服务器等,在此不做限定。
19.目前,金融数据涉及金融领域的股票、期权、期货等多个方面,以及每个交易日从开盘到收盘的数据记录。随着经济发展,金融数据的数据量日益增加,同时,用户对海量数据的快速精准查询的需求越来越高。当前主要通过服务器直接访问数据库的方式来进行数据查询。然而,由于数据库中存储的数据量较大,直接在数据库中进行数据查询的方式数据查询效率较低,且难以确保数据查询的准确度,用户体验较差。
20.基于上述问题,本技术提供一种数据查询方法及相关装置,下面结合附图进行详细说明。
21.请参阅图1a,图1a是本技术实施例提供的一种电子设备的结构示意图。该电子设备包括处理器和存储器等等。其中,存储器与处理器连接。处理器是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器内的软件程序和/或模块,以及调用存储在存储器内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控,处理器可以为中央处理器(central processing unit / processor,cpu)、图形处理器(graphics processing unit,gpu)或者网络处理器(neural-network processing unit,npu)。
22.进一步地,处理器可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器中。
23.其中,存储器用于存储软件程序和/或模块,处理器通过运行存储在存储器的软件程序和/或模块,从而执行电子设备的各种功能应用。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的软件程序等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
24.请参阅图1b,图1b是本技术实施例提供的一种数据查询方法的流程示意图,如图所示,应用于如图1a所示的电子设备,本数据查询方法包括:步骤101、获取用户输入的数据查询请求。
25.其中,上述数据查询请求用于查询业务对象对应的业务数据。
26.其中,本技术实施例提供的数据查询方法可以应用于服务器,也可以应用于用户端设备,在此不做限定。在本技术实施例应用于服务器的情况下,步骤101可以是指服务器接收用户端设备发送的数据查询请求。在本技术实施例应用于用户端设备的情况下,步骤101可以是指用户端设备根据用户操作确定数据查询请求。
27.步骤102、确定所述数据查询请求对应的查询标识。
28.其中,上述查询标识可以由阿拉伯数字、罗马数字、英文字母、拉丁字母、符号、希腊字母等标识中的至少一种标识组成,在此不做限定。
29.步骤103、根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态。
30.其中,上述业务数据状态用于指示所述业务数据是否存在。上述预设的业务数据状态表可以预先存储于电子设备中,也可以由管理人员或用户自行定义,在此不做限定。预设的业务数据状态表可以是数组、表格、公式、函数等形式,在此不做限定。
31.步骤104、在所述业务数据状态指示存在所述业务数据的情况下,根据所述查询标识查询所述业务数据。
32.其中,在本技术实施例应用于服务器的情况下,步骤104可以是指服务器根据查询标识查询业务数据。在本技术实施例应用于用户端设备的情况下,步骤104可以是指用户端设备根据查询标识请求服务器查询业务数据。
33.具体实现中,电子设备可获取用户输入的数据查询请求,根据数据查询请求确定其对应的查询标识,并根据查询标识和预设的业务数据状态表,确定查询标识对应的业务数据状态。
34.在业务数据状态指示存在业务数据的情况下,根据查询标识查询业务数据,并将查询到的业务数据反馈至用户端设备。在业务数据状态指示不存在业务数据的情况下,向用户端设备反馈未查询到数据查询请求对应的业务数据这一查询结果。
35.如此,通过查询标识和预设的业务数据状态表,在查询业务数据之前,先确定业务数据状态,在业务数据状态指示存在业务数据的情况下,再根据查询标识查询业务数据,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
36.在一个可能的示例中,所述数据查询请求包括查询日期和业务对象名称,所述查询标识包括第一子标识和第二子标识,上述步骤102,所述确定所述数据查询请求对应的查询标识,可以包括如下步骤:步骤1021、根据所述查询日期确定所述第一子标识;步骤1022、根据所述业务对象名称确定所述第二子标识;步骤1023、根据所述第一子标识和所述第二子标识确定所述查询标识。
37.其中,上述查询日期可以是年月日的形式,也可以是日月年、月日年等形式,还可以是月份和日期的组合,在此不做限定。需要说明地,在查询日期为月份和日期的组合时,电子设备可默认查询日期为当前年份。
38.其中,上述业务对象名称可以是股票、期货、利率、信贷、汇率等业务对象的具体名称,也可以是业务对象对应的代码,还可以是具体名称和代码的组合,在此不做限定。
39.其中,上述第一子标识和第二子标识可以由阿拉伯数字、罗马数字、英文字母、拉丁字母、符号、希腊字母等标识中的至少一种标识组成,在此不做限定。
40.具体实现中,第一子标识可以通过如下方式确定:确定起始日期,并确定起始日期和查询日期相差的天数,根据相差的天数确定查询日期对应的第一子标识。其中,上述起始日期可以是预先存储于电子设备中的,也可以由管理人员或用户自行定义的,在此不做限定。
41.例如,以1970年1月1日为起始日期,若查询日期为1970年1月1日当天,则根据起始日期和查询日期相差的天数0,确定查询日期1970年1月1日对应的第一子标识为1。以此类推,1970年1月2日当天对应的第一子标识为2
……
2022年1月7日当天对应的第一子标识为19000。如此,通过计算起始日期和查询日期相差的天数来确定第一子标识,有助于确保查询日期和第一子标识的对应性,有助于确保后续根据查询标识确定业务数据状态的准确度。
42.第一子标识还可以通过如下方式确定:确定查询日期对应的年份、月份和日期,得到目标年份、目标月份和目标日期;确定目标年份与预设年份的年份差值,若年份差值为正数,则将年份差值确定第一子标识中的第一部分;若年份差值为负数,则以0表示负号,将0和年份差值的绝对值确定为第一子标识中的第一部分;根据目标月份确定第一子标识中的第二部分;根据目标日期确定第一子标识中的第三部分;根据第一部分、第二部分和第三部分确定第一子标识。其中,上述预设年份可以是预先存储于电子设备中的,也可以由管理人员或用户自行定义的,在此不做限定。
43.例如,查询日期为2021年8月11日,则目标年份为2021,目标月份为8,目标日期为11。若预设年份为2000年,则年份差值为21,第一子标识的第一部分为21,根据目标月份8确定的第二部分为8,根据目标日期确定的第三部分为11,则第一子标识为21811。若预设年份为2022年,则年份差值为-1,在第一子标识的第一部分中以0表示负号,将第一部分确定为01,则第一子标识为01811。如此,通过确定年份差值、目标月份和目标日期确定第一子标识,有助于确保查询日期和第一子标识的对应性,有助于确保后续根据查询标识确定业务数据状态的准确度。
44.此外,若查询日期中的年份晚于当前年份,或查询日期中的月份数值大于12,或查询日期中的日期数值大于查询日期中的月份对应的最大日期数,则向用户端设备反馈查询日期有误的结果。如此,在用户输入的查询日期存在错误时,向用户反馈错误,有助于用户及时对错误进行修正,有助于提升用户体验。
45.第二子标识可以通过如下方式确定:根据业务对象名称确定业务对象对应的代码,得到代码数字;在代码数字中截取预设范围的数字作为第二子标识,其中,所述预设范围为:从代码数字中第一位不为0的数字起,至代码数字的最后一位数字止。
46.例如,甲股票的股票代码为0080780,代码数字为0080780,代码数字中第一位不为0的数字至最后一位数字的范围为:80780,则甲股票对应的第二子标识为80780。如此,通过业务对象对应的代码确定第二子标识,有助于确保业务对象名称和第二子标识的对应性,有助于确保后续根据查询标识确定业务数据状态的准确度。
47.第二子标识还可以通过如下方式确定:电子设备中可预先存储业务对象名称与第二子标识的对应关系,例如业务对象甲对应的第二子标识为1,业务对象乙对应的第二子标识为2
……
以此类推。
48.例如,用户要查询2022年1月7日甲股票的行情数据,可以输入相应的查询日期和
股票名称。电子设备可根据用户输入的查询日期和起始日期,确定查询日期对应的第一子标识为19000,并根据用户输入的股票名称,确定股票名称对应的第二子标识为10,根据第一子标识19000和第二子标识10,将查询标识确定为1900010。
49.可以看出,本技术实施方式中,电子设备可根据查询日期确定第一子标识,根据业务对象名称确定第二子标识,根据第一子标识和第二子标识确定查询标识。如此,分别根据查询日期和业务对象名称确定第一子标识和第二子标识,并根据第一子标识和第二子标识确定查询标识,有助于确保查询标识与数据查询请求的对应性,有助于确保后续根据查询标识确定业务数据状态的准确程度。
50.在一个可能的示例中,所述预设的业务数据状态表包括二维数组,上述步骤103,所述根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态,可以包括如下步骤:步骤1031、在所述二维数组中确定所述第一子标识对应的列,得到目标列;步骤1032、根据所述二维数组的第一行和所述目标列,确定第一目标单元;步骤1033、查询所述第一目标单元对应的第一目标状态值;步骤1034、在所述第一目标状态值为第一数值的情况下,在所述二维数组中确定所述第二子标识对应的行,得到目标行;步骤1035、根据所述目标行和所述目标列,确定第二目标单元;步骤1036、查询所述第二目标单元对应的第二目标状态值;步骤1037、在所述第二目标状态值为所述第一数值的情况下,确定所述业务数据状态指示存在所述业务数据。
51.其中,上述第一目标状态值用于指示查询日期是否为交易日。上述第二目标状态值用于指示业务对象在查询日期的业务数据状态。
52.其中,上述第一数值可以是阿拉伯数字、罗马数字、英文字母、拉丁字母、符号、希腊字母等标识中的任意一种或多种,例如0、1、a、a1等,在此不做限定。可以理解地,以阿拉伯数字表示第一数值,有助于减少内存占用量。
53.具体实现中,电子设备可通过查询二维数组确定查询标识对应的业务数据状态。二维数组如表1所示。
54.表1一种二维数组111

111

010

001

111
……………
例如,根据查询日期确定的第一子标识为19000,根据股票名称确定的第二子标识为10,查询标识为1900010。根据第一子标识,在二维数组中找到第19000列,得到目标列,则根据二维数组的第1行和第19000列确定的单元即为第一目标单元。查询第一目标单元中存储的第一目标状态值,在第一目标状态值为1的情况下,根据第二子标识10在二维数组中找第11行,得到目标行,并根据二维数组的第11行和第19000列确定第二目标单元,并查询第
二目标单元对应的第二目标状态值。在第二目标状态值为1的情况下,确定业务数据状态指示查询标识对应的业务数据存在。
55.可以看出,本技术实施方式中,电子设备可在二维数组中确定第一子标识对应的列,得到目标列;根据二维数组的第一行和目标列,确定第一目标单元;查询第一目标单元对应的第一目标状态值;在第一目标状态值为第一数值的情况下,在二维数组中确定第二子标识对应的行,得到目标行;根据目标行和目标列,确定第二目标单元;查询第二目标单元对应的第二目标状态值;在第二目标状态值为第一数值的情况下,确定业务数据状态指示存在业务数据。如此,在查询业务数据之前,通过查询标识和二维数组先确定业务数据状态,在业务数据状态指示存在业务数据的情况下,再根据查询标识查询业务数据,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
56.在一个可能的示例中,上述步骤103,所述根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态,还可以包括如下步骤:步骤1038、在所述第一目标状态值为第二数值,或所述第二目标状态值为所述第二数值的情况下,确定所述业务数据状态指示不存在所述业务数据。
57.其中,上述第二数值可以是阿拉伯数字、罗马数字、英文字母、拉丁字母、符号、希腊字母等标识中的任意一种或多种,例如0、1、a、a1等,在此不做限定。可以理解地,以阿拉伯数字表示第二数值,有助于减少内存占用量。
58.例如,请再次参阅表1,若根据二维数组的第1行和第19000列确定的第一目标单元中,第一目标状态值0,则可确定业务数据状态指示查询标识对应的业务数据不存在。
59.又如,第一目标单元中存储的第一目标状态值为1,但根据二维数组的第11行和第19000列确定的第二目标单元中,第二目标状态值为0,则可确定业务数据状态指示查询标识对应的业务数据不存在。
60.如此,在查询业务数据之前,通过查询标识和二维数组先确定业务数据状态,在业务数据状态指示不存在业务数据的情况下,电子设备可直接向用户端设备反馈未查询到数据查询请求对应的业务数据这一查询结果,避免直接到数据库中轮询查询数据,避免了数据查询等待时间较长的现象,有助于提升数据库性能,有助于确保数据查询服务的稳定性,且二维数组可较快地通过查询标识实现精准查询,有助于确保数据查询的准确高效。
61.在一个可能的示例中,在上述步骤1032,根据所述二维数组的第一行和所述目标列,确定第一目标单元之前,所述方法还包括:步骤10311、判断所述业务数据状态是否与日期类型存在关联,所述日期类型包括交易日和非交易日;步骤10312、若所述业务数据状态与所述日期类型存在关联,则执行所述根据所述二维数组的第一行和所述目标列,确定第一目标单元的步骤。
62.例如,股票行情数据、期货行情数据等金融数据,若日期类型为非交易日,则股票行情数据和期货行情数据对应的业务数据状态均为不存在业务数据。若日期类型为交易日,则可能存在相应的业务数据。因此,股票行情数据、期货行情数据等金融数据的业务数据状态与日期类型存在关联。
63.在业务数据状态与日期类型存在关联的情况下,如前所述,可以先确定第一目标单元对应的第一目标状态值。若第一目标状态值为第二数值,则确定不存在业务数据。若第
一目标状态值为第一数值,则确定第二目标状态值。若第二目标状态值为第一数值,则确定存在业务数据。若第二目标状态值为第二数值,则确定不存在业务数据。
64.可以看出,本技术实施例中,判断业务数据状态是否与日期类型存在关联,日期类型包括交易日和非交易日;若业务数据状态与日期类型存在关联,则执行根据二维数组的第一行和目标列,确定第一目标单元的步骤。如此,在业务数据状态与日期类型存在关联时,先确定第一目标单元对应的第一目标状态值,在第一目标状态值指示查询日期为非交易日的情况下,电子设备可直接向用户端设备反馈未查询到数据查询请求对应的业务数据这一查询结果,避免直接到数据库中轮询查询数据,避免了数据查询等待时间较长的现象,有助于提升数据库性能,有助于确保数据查询服务的稳定性。
65.在一个可能的示例中,若所述业务数据状态与所述日期类型不存在关联,在上述步骤1031,在所述二维数组中确定所述第一子标识对应的列,得到目标列之后,所述方法还包括:步骤10321、在所述二维数组中确定所述第二子标识对应的行,得到目标行;步骤10322、根据所述目标行和所述目标列,确定所述第二目标单元;步骤10323、查询所述第二目标单元对应的第二目标状态值,所述第二目标状态值用于指示所述业务对象在所述查询日期的所述业务数据状态;步骤10324、在所述第二目标状态值为所述第一数值的情况下,确定所述业务数据状态指示存在所述业务数据。
66.例如,利率行情数据、信贷行情数据、汇率行情数据等金融数据,不论日期类型是交易日还是非交易日,利率行情数据、信贷行情数据、汇率行情数据对应的业务数据状态为可能存在、也可能不存在相应的业务数据。因此,利率行情数据、信贷行情数据、汇率行情数据等金融数据的业务数据状态与日期类型不存在关联。
67.在业务数据状态与日期类型不存在关联的情况下,根据目标行和目标列确定第二目标单元,查询第二目标单元对应的第二目标状态值。若第二目标状态值为第一数值,则确定存在业务数据。若第二目标状态值为第二数值,则确定不存在业务数据。
68.可以看出,本技术实施例中,在二维数组中确定第一子标识对应的列,得到目标列;在二维数组中确定第二子标识对应的行,得到目标行;根据目标行和目标列,确定第二目标单元;查询第二目标单元对应的第二目标状态值,第二目标状态值用于指示业务对象在查询日期的业务数据状态;在第二目标状态值为第一数值的情况下,确定业务数据状态指示存在业务数据。如此,在业务数据状态与日期类型不存在关联时,直接根据第一子标识确定目标列,根据第二子标识确定目标行,并根据目标列和目标行确定第二目标单元,通过第二目标单元对应的第二目标状态值确定业务数据状态,在第二目标状态值指示不存在业务数据的情况下,电子设备可直接向用户端设备反馈未查询到数据查询请求对应的业务数据这一查询结果,避免直接到数据库中轮询查询数据,避免了数据查询等待时间较长的现象,有助于提升数据库性能,有助于确保数据查询服务的稳定性。
69.在一个可能的示例中,所述二维数组可以通过以下方式构建:步骤01、在所述二维数组的所述第一行中确定当前日期对应的列,得到当前日期列;步骤02、根据所述第一行和所述当前日期列,确定第一单元;
步骤03、若所述当前日期为交易日,则将所述第一单元对应的第一状态值确定为所述第一数值;步骤04、若所述当前日期为非交易日,则将所述第一状态值确定为所述第二数值;步骤05、从所述二维数组的第二行起,根据所述业务对象的数量确定所述二维数组的行数,每一所述业务对象对应所述二维数组中的一行;步骤06、若当前业务对象在所述当前日期存在所述业务数据,则根据所述当前业务对象对应的当前业务对象行和所述当前日期列,确定第二单元,并将所述第二单元对应的第二状态值确定为所述第一数值;步骤07、若所述当前业务对象在所述当前日期不存在所述业务数据,则根据所述当前业务对象行和所述当前日期列,确定所述第二单元,并将所述第二状态值确定为所述第二数值。
70.其中,上述第一状态值可以用于指示当前日期是否为交易日,上述第二状态值可以用于指示当前业务对象在当前日期是否存在业务数据。
71.具体实现中,请再次参阅表1,在二维数组的第一行中,每一列分别代表每一自然日。若第p列(p为大于0的正整数)对应的自然日为交易日,例如非法定节假日的星期一,则根据第一行第p列确定对应的第一单元,并将第一单元对应的第一状态值确定为第一数值。若第p列对应的自然日为非交易日,例如法定节假日,则根据第一行第p列确定对应的第一单元,并将第一单元对应的第一状态值确定为第二数值。需要说明地,若二维数组中存储了多个自然日的业务数据,则二维数组的第一行中就有多个第一单元。
72.从二维数组的第二行起,根据业务对象的数量,确定二维数组的行数。
73.例如,统计11284个日期中的4794支股票,则二维数组的行数为4794+1=4795。4794支股票中,第1个日期的第1支股票对应二维数组的第1列第2行,第1个日期的第2支股票对应二维数组的第1列第3行,第2个日期的第1支股票对应二维数组的第2列第1行
……
以此类推,第11284个日期的第4794支股票对应二维数组的第11284列第4795行。
74.若第q行(q为大于1的正整数)对应的股票在当前日期存在业务数据,则根据第q行(当前业务对象行)和当前日期列确定第二单元,并将第二单元对应的第二状态值确定为第一数值。若第q行对应的股票在当前日期不存在业务数据,则根据第q行(当前业务对象行)和当前日期列确定第二单元,并将第二单元对应的第二状态值确定为第二数值。需要说明地,若二维数组中存储了当前日期的多个业务对象的业务数据,则二维数组的当前日期列中就有多个第二单元。
75.如此,通过在二维数组中构建第一单元和第二单元,并通过当前日期是否为交易日确定第一状态值,通过业务数据状态确定第二状态值,有助于确保后续根据二维数组确定业务数据状态的准确性。且由于二维数组中不存储具体的业务数据,二维数组所占内存较小,因此,在二维数组中查询数据的时间较短,数据查询服务也较为稳定。
76.可选地,若存在新的业务对象,所述方法还可以包括如下步骤:步骤105、在所述二维数组中新建与所述新的业务对象对应的行,得到新建行;步骤106、若所述新的业务对象在所述当前日期存在所述业务数据,则根据所述新建行和所述当前日期列,确定新建单元,并将所述新建单元对应的新建状态值确定为所述第一数值;
步骤107、若所述新的业务对象在所述当前日期不存在所述业务数据,则根据所述新建行和所述当前日期列,确定所述新建单元,并将所述新建状态值确定为所述第二数值。
77.具体实现中,若产生了新的业务对象,例如有新发行的甲股票需要添加至数据库中,则二维数组中也需对应添加甲股票。此时可在二维数组中新建与甲股票对应的行,得到新建行。可以理解地,新建行可以是除了第一行以外的任意一行。
78.根据甲股票在当前日期的业务数据状态,确定甲股票在当前日期列对应的新建状态值。若甲股票在当前日期产生了业务数据,则根据新建行和当前日期列确定新建单元,并将新建单元对应的新建状态值确定为第一数值。若甲股票在当前日期没有产生业务数据,则将新建单元对应的新建状态值确定为第二数值。
79.如此,在产生新的业务对象时,在二维数组中对应增加与新的业务对象对应的新建行,并根据新的业务对象的业务数据状态确定新建单元中的新建状态值,有助于用户后续通过二维数组较快地查询新的业务对象对应的业务数据状态,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
80.在一个可能的示例中,所述方法应用于服务器;所述根据所述查询标识查询所述业务数据,可以包括如下步骤:步骤1041、获取预设的数据库;步骤1042、根据所述查询标识,在所述预设的数据库中查询所述业务数据。
81.其中,上述预设的数据库可以是存储在服务器中的数据库,也可以是存储在与服务器通信相连的其他设备中的数据库,在此不做限定。预设的数据库中的数据与查询标识对应。例如,第一子标识为1,第二子标识为10,则查询标识为110,查询标识对应的数据库中的数据为1970年1月1日甲股票的业务数据;第一子标识为19000,第二子标识为11,则查询标识为1900011,查询标识对应的数据库中的数据为2022年1月7日乙股票的业务数据。
82.可以看出,本技术实施方式中,由于数据库中的数据与查询标识对应,因此,可以根据查询标识在预设的数据库中查询业务数据,避免直接到数据库中轮询查询数据,避免了数据查询等待时间较长的现象,有助于提升数据库性能,有助于确保数据查询服务的稳定性。
83.与上述实施例一致地,请参阅图2,图2是本技术实施例提供的一种电子设备的结构示意图,如图所示,该包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,本技术实施例中,上述程序包括用于执行以下步骤的指令:获取用户输入的数据查询请求,所述数据查询请求用于查询业务对象对应的业务数据;确定所述数据查询请求对应的查询标识;根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态,所述业务数据状态用于指示所述业务数据是否存在;在所述业务数据状态指示存在所述业务数据的情况下,根据所述查询标识查询所述业务数据。
84.可以看出,本技术实施例中所描述的电子设备,可获取用户输入的数据查询请求,确定数据查询请求对应的查询标识,根据查询标识和预设的业务数据状态表,确定查询标
识对应的业务数据状态,在业务数据状态指示存在业务数据的情况下,根据查询标识查询业务数据;如此,通过查询标识和预设的业务数据状态表,在查询业务数据之前,先确定业务数据状态,在业务数据状态指示存在业务数据的情况下,再根据查询标识查询业务数据,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
85.在一个可能的示例中,所述数据查询请求包括查询日期和业务对象名称,所述查询标识包括第一子标识和第二子标识,在所述确定所述数据查询请求对应的查询标识方面,上述程序包括用于执行以下步骤的指令:根据所述查询日期确定所述第一子标识;根据所述业务对象名称确定所述第二子标识;根据所述第一子标识和所述第二子标识确定所述查询标识。
86.在一个可能的示例中,所述预设的业务数据状态表包括二维数组,在所述根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态方面,上述程序包括用于执行以下步骤的指令:在所述二维数组中确定所述第一子标识对应的列,得到目标列;根据所述二维数组的第一行和所述目标列,确定第一目标单元;查询所述第一目标单元对应的第一目标状态值,所述第一目标状态值用于指示所述查询日期是否为交易日;在所述第一目标状态值为第一数值的情况下,在所述二维数组中确定所述第二子标识对应的行,得到目标行;根据所述目标行和所述目标列,确定第二目标单元;查询所述第二目标单元对应的第二目标状态值,所述第二目标状态值用于指示所述业务对象在所述查询日期的所述业务数据状态;在所述第二目标状态值为所述第一数值的情况下,确定所述业务数据状态指示存在所述业务数据。
87.在一个可能的示例中,在所述根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的所述业务数据状态方面,上述程序还包括用于执行以下步骤的指令:在所述第一目标状态值为第二数值,或所述第二目标状态值为所述第二数值的情况下,确定所述业务数据状态指示不存在所述业务数据。
88.在一个可能的示例中,在构建所述二维数组方面,上述程序包括用于执行以下步骤的指令:在所述二维数组的所述第一行中确定当前日期对应的列,得到当前日期列;根据所述第一行和所述当前日期列,确定第一单元;若所述当前日期为交易日,则将所述第一单元对应的第一状态值确定为所述第一数值;若所述当前日期为非交易日,则将所述第一状态值确定为所述第二数值;从所述二维数组的第二行起,根据所述业务对象的数量确定所述二维数组的行数,每一所述业务对象对应所述二维数组中的一行;若当前业务对象在所述当前日期存在所述业务数据,则根据所述当前业务对象对应的当前业务对象行和所述当前日期列,确定第二单元,并将所述第二单元对应的第二状
态值确定为所述第一数值;若所述当前业务对象在所述当前日期不存在所述业务数据,则根据所述当前业务对象行和所述当前日期列,确定所述第二单元,并将所述第二状态值确定为所述第二数值。
89.在一个可能的示例中,若存在新的业务对象,上述程序还包括用于执行以下步骤的指令:在所述二维数组中新建与所述新的业务对象对应的行,得到新建行;若所述新的业务对象在所述当前日期存在所述业务数据,则根据所述新建行和所述当前日期列,确定新建单元,并将所述新建单元对应的新建状态值确定为所述第一数值;若所述新的业务对象在所述当前日期不存在所述业务数据,则根据所述新建行和所述当前日期列,确定所述新建单元,并将所述新建状态值确定为所述第二数值。
90.在一个可能的示例中,在所述根据所述查询标识查询所述业务数据方面,上述程序包括用于执行以下步骤的指令:获取预设的数据库,所述预设的数据库中的数据与所述查询标识对应;根据所述查询标识,在所述预设的数据库中查询所述业务数据。
91.上述主要从方法侧执行过程的角度对本技术实施例的方案进行了介绍。可以理解的是,为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
92.本技术实施例可以根据上述方法中的示例进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本技术实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
93.请参阅图3a,图3a是本技术实施例中所涉及的数据查询装置300的功能单元组成框图,所述装置300包括:获取单元301、确定单元302和查询单元303,其中,所述获取单元301,用于获取用户输入的数据查询请求,所述数据查询请求用于查询业务对象对应的业务数据;所述确定单元302,用于确定所述数据查询请求对应的查询标识;所述确定单元302,还用于根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态,所述业务数据状态用于指示所述业务数据是否存在;所述查询单元303,用于在所述业务数据状态指示存在所述业务数据的情况下,根据所述查询标识查询所述业务数据。
94.可以看出,本技术实施例中所描述的数据查询装置,可获取用户输入的数据查询请求,确定数据查询请求对应的查询标识,根据查询标识和预设的业务数据状态表,确定查询标识对应的业务数据状态,在业务数据状态指示存在业务数据的情况下,根据查询标识查询业务数据;如此,通过查询标识和预设的业务数据状态表,在查询业务数据之前,先确
定业务数据状态,在业务数据状态指示存在业务数据的情况下,再根据查询标识查询业务数据,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
95.在一个可能的示例中,所述数据查询请求包括查询日期和业务对象名称,所述查询标识包括第一子标识和第二子标识,在所述确定所述数据查询请求对应的查询标识方面,所述确定单元302具体用于:根据所述查询日期确定所述第一子标识;根据所述业务对象名称确定所述第二子标识;根据所述第一子标识和所述第二子标识确定所述查询标识。
96.在一个可能的示例中,所述预设的业务数据状态表包括二维数组,在所述根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的业务数据状态方面,所述确定单元302具体用于:在所述二维数组中确定所述第一子标识对应的列,得到目标列;根据所述二维数组的第一行和所述目标列,确定第一目标单元;查询所述第一目标单元对应的第一目标状态值,所述第一目标状态值用于指示所述查询日期是否为交易日;在所述第一目标状态值为第一数值的情况下,在所述二维数组中确定所述第二子标识对应的行,得到目标行;根据所述目标行和所述目标列,确定第二目标单元;查询所述第二目标单元对应的第二目标状态值,所述第二目标状态值用于指示所述业务对象在所述查询日期的所述业务数据状态;在所述第二目标状态值为所述第一数值的情况下,确定所述业务数据状态指示存在所述业务数据。
97.在一个可能的示例中,在所述根据所述查询标识和预设的业务数据状态表,确定所述查询标识对应的所述业务数据状态方面,所述确定单元302具体还用于:在所述第一目标状态值为第二数值,或所述第二目标状态值为所述第二数值的情况下,确定所述业务数据状态指示不存在所述业务数据。
98.在一个可能的示例中,在所述根据所述查询标识查询所述业务数据方面,所述查询单元303具体用于:获取预设的数据库,所述预设的数据库中的数据与所述查询标识对应;根据所述查询标识,在所述预设的数据库中查询所述业务数据。
99.在一个可能的示例中,如图3b所示,与上述图3a相比较,装置300还可包括:构建单元304,其中,所述构建单元304具体用于:在所述二维数组的所述第一行中确定当前日期对应的列,得到当前日期列;根据所述第一行和所述当前日期列,确定第一单元;若所述当前日期为交易日,则将所述第一单元对应的第一状态值确定为所述第一数值;若所述当前日期为非交易日,则将所述第一状态值确定为所述第二数值;从所述二维数组的第二行起,根据所述业务对象的数量确定所述二维数组的行数,每一所述业务对象对应所述二维数组中的一行;
若当前业务对象在所述当前日期存在所述业务数据,则根据所述当前业务对象对应的当前业务对象行和所述当前日期列,确定第二单元,并将所述第二单元对应的第二状态值确定为所述第一数值;若所述当前业务对象在所述当前日期不存在所述业务数据,则根据所述当前业务对象行和所述当前日期列,确定所述第二单元,并将所述第二状态值确定为所述第二数值。
100.可以看出,本技术实施例提供的数据查询装置,可在二维数组的第一行中确定当前日期对应的列,得到当前日期列;根据第一行和当前日期列,确定第一单元;若当前日期为交易日,则将第一单元对应的第一状态值确定为第一数值;若当前日期为非交易日,则将第一状态值确定为第二数值;从二维数组的第二行起,根据业务对象的数量确定二维数组的行数,每一业务对象对应二维数组中的一行;若当前业务对象在当前日期存在业务数据,则根据当前业务对象对应的当前业务对象行和当前日期列,确定第二单元,并将第二单元对应的第二状态值确定为第一数值;若当前业务对象在当前日期不存在业务数据,则根据当前业务对象行和当前日期列,确定第二单元,并将第二状态值确定为第二数值。如此,通过在二维数组中构建第一单元和第二单元,并通过当前日期是否为交易日确定第一状态值,通过业务数据状态确定第二状态值,有助于确保后续根据二维数组确定业务数据状态的准确性。且由于二维数组中不存储具体的业务数据,二维数组所占内存较小,因此,在二维数组中查询数据的时间较短,数据查询服务也较为稳定。
101.在一个可能的示例中,如图3c所示,与上述图3b相比较,装置300还可包括:新建单元305,其中,所述新建单元305,用于在所述二维数组中新建与所述新的业务对象对应的行,得到新建行;所述确定单元302,还用于在所述新的业务对象在所述当前日期存在所述业务数据的情况下,根据所述新建行和所述当前日期列,确定新建单元,并将所述新建单元对应的新建状态值确定为所述第一数值;所述确定单元302,还用于在所述新的业务对象在所述当前日期不存在所述业务数据的情况下,根据所述新建行和所述当前日期列,确定所述新建单元,并将所述新建状态值确定为所述第二数值。
102.可以看出,本技术实施例提供的数据查询装置,可在二维数组中新建与新的业务对象对应的行,得到新建行;若新的业务对象在当前日期存在业务数据,则根据新建行和当前日期列,确定新建单元,并将新建单元对应的新建状态值确定为第一数值;若新的业务对象在当前日期不存在业务数据,则根据新建行和当前日期列,确定新建单元,并将新建状态值确定为第二数值。如此,在产生新的业务对象时,在二维数组中对应增加与新的业务对象对应的新建行,并根据新的业务对象的业务数据状态确定新建单元中的新建状态值,有助于用户后续通过二维数组较快地查询新的业务对象对应的业务数据状态,有助于提高数据查询效率,同时有助于确保数据查询的准确度。
103.可以理解的是,本实施例的数据查询装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
104.本技术实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电
子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括控制平台。
105.本技术实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括控制平台。
106.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
107.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
108.在本技术所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
109.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
110.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
111.上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例上述方法的全部或部分步骤。而前述的存储器包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
112.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:read-only memory ,简称:rom)、随机存取器(英文:random access memory,简称:ram)、磁盘或光盘等。
113.以上对本技术实施例进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;
同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1