一种数据查询的方法、装置、设备及存储介质与流程

文档序号:34983350发布日期:2023-08-03 16:58阅读:40来源:国知局
一种数据查询的方法、装置、设备及存储介质与流程

本说明书涉及计算机,尤其涉及一种数据查询的方法、装置、设备及存储介质。


背景技术:

1、目前,在大数据、人工智能、互联网和物联网等技术领域中,对数据进行处理是十分基础的需求,而为了满足数据处理需求,数据库系统提供了各种不同的数据类型供开发人员使用,以使开发人员能够针对各种不同类型的数据进行处理,例如:int数据类型用于存储整数数据、double数据类型用于存储浮点型数据等。

2、而数据库系统会为不同的数据类型的数据分配不同大小的内存,其中,每种数据类型的数据被分配的内存大小是固定的,这就使得不同数据类型的存储数据是有范围限制的,当存储数据较大时,将会出现溢出情况,使得数据处理出现异常。例如:short类型通常会被分配两个字节存储空间,而两个字节的存储空间可以存储的整数的数据范围为-32768到+32767,如果将数字+32768存储到short类型变量中时,就会出现数据溢出,得到实际存储的数字为-32768,从而导致数据处理出现异常。

3、但是,由于在一些特定的领域中对数据的精度有着极高的要求,基于此,在数据库系统中提供了decimal类型(即,高精度十进制数),这种数据类型通过更大的存储空间以及通过将数据转换为符号、基数、指数、尾数的形式进行存储,从而可以满足对数据的高精度要求。例如:若需要存储数据123123456789.123456789时,可以将这个数拆分为123*(10^9)^1+123456789*(10^9)^0+123456789*(10^9)^-1,其中,这里的“123”以及两个“123456789”即为尾数,“10^9”即为基数,“1”、“0”,“-1”即为指数,符号为正。

4、然而,由于decimal类型的数据的存储方式特殊等原因,使得在按条件对decimal类型的数据进行数据查询操作时的查询效率较低。


技术实现思路

1、本说明书提供一种数据查询的方法、装置、设备及存储介质,以部分的解决现有技术存在的问题。

2、本说明书采用下述技术方案:

3、本说明书提供了一种数据查询的方法,数据库中以符号参数、指数参数以及尾数参数的形式存储数据,所述方法包括:

4、获取查询语句;

5、对所述查询语句进行解析,得到查询条件值;

6、确定所述查询条件值对应的条件参数,所述条件参数包括:待查询数据对应的符号参数、待查询数据对应的指数参数;

7、针对预先处理的每个数据区间,若确定该数据区间对应有元数据,则根据该数据区间对应的元数据以及所述条件参数,进行数据查询,该数据区间对应的元数据用于描述该数据区间内的数据所对应的存储参数,所述存储参数包括:该数据区间内的数据对应的符号参数、该数据区间内的数据对应的指数参数。

8、可选地,预先处理各数据区间,具体包括:

9、针对每个数据区间,若确定该数据区间内的数据所对应的存储参数相同,清空用于存储该数据区间内每个数据的存储参数的存储空间,并将所述存储参数作为该数据区间对应的元数据进行存储。

10、可选地,预先处理各数据区间,具体包括:

11、针对每个数据区间,若确定该数据区间内的数据所对应的存储参数不同,则针对该数据区间内的每个数据,清空用于存储该数据对应存储参数的存储空间,并在存储该数据至少部分尾数参数的存储空间中存储该数据对应的存储参数。

12、可选地,在存储该数据至少部分尾数参数的存储空间中存储该数据对应的存储参数,具体包括:

13、当确定存储该数据至少部分尾数参数的存储空间中的指定字节未被占用时,则将该数据对应的存储参数存储在所述指定字节中。

14、可选地,在存储该数据的至少部分尾数参数的存储空间中存储该数据对应的存储参数,具体包括:

15、当确定存储该数据至少部分尾数参数的存储空间中的指定字节被占用时,则将存储所述至少部分尾数参数的存储空间进行扩展,并在扩展后的存储空间中存储该数据对应的存储参数。

16、可选地,所述方法还包括:

17、针对预先处理的每个数据区间,若确定该数据区间未对应有元数据,则针对该数据区间内的每个数据,确定用于表征该数据数值大小的参照值,作为该数据对应的参照值,该数据对应的参照值是通过存储该数据至少部分尾数参数的存储空间中所保存的该数据的存储参数以及所述至少部分尾数参数确定的;

18、根据所述查询条件值以及该数据区间内每个数据对应的参照值,从该数据区间中进行数据查询。

19、可选地,所述数据库中存储的数据包括:decimal类型的数据。

20、本说明书提供了一种数据查询的装置,包括:

21、获取模块,用于获取查询语句;

22、解析模块,用于对所述查询语句进行解析,得到查询条件值;

23、确定模块,用于确定所述查询条件值对应的条件参数,所述条件参数包括:待查询数据对应的符号参数、待查询数据对应的指数参数;

24、查询模块,用于针对预先处理的每个数据区间,若确定该数据区间对应有元数据,则根据该数据区间对应的元数据以及所述条件参数,进行数据查询,该数据区间对应的元数据用于描述该数据区间内的数据所对应的存储参数,所述存储参数包括:该数据区间内的数据对应的符号参数、该数据区间内的数据对应的指数参数。

25、可选地,所述装置还包括:处理模块;

26、所述处理模块用于,针对每个数据区间,若确定该数据区间内的数据所对应的存储参数相同,清空用于存储该数据区间内每个数据的存储参数的存储空间,并将所述存储参数作为该数据区间对应的元数据进行存储。

27、可选地,所述装置还包括:处理模块;

28、所述处理模块用于,针对每个数据区间,若确定该数据区间内的数据所对应的存储参数不同,则针对该数据区间内的每个数据,清空用于存储该数据对应存储参数的存储空间,并在存储该数据至少部分尾数参数的存储空间中存储该数据对应的存储参数。

29、可选地,所述处理模块具体用于,当确定存储该数据至少部分尾数参数的存储空间中的指定字节未被占用时,则将该数据对应的存储参数存储在所述指定字节中。

30、可选地,所述处理模块具体用于,当确定存储该数据至少部分尾数参数的存储空间中的指定字节被占用时,则将存储所述至少部分尾数参数的存储空间进行扩展,并在扩展后的存储空间中存储该数据对应的存储参数。

31、可选地,所述查询模块具体用于,针对预先处理的每个数据区间,若确定该数据区间未对应有元数据,则针对该数据区间内的每个数据,确定用于表征该数据数值大小的参照值,作为该数据对应的参照值,该数据对应的参照值是通过存储该数据至少部分尾数参数的存储空间中所保存的该数据的存储参数以及所述至少部分尾数参数确定的;根据所述查询条件值以及该数据区间内每个数据对应的参照值,从该数据区间中进行数据查询。

32、本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述数据查询的方法。

33、本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述数据查询的方法。

34、本说明书采用的上述至少一个技术方案能够达到以下有益效果:

35、在本说明书提供的数据查询的方法,获取查询语句,对查询语句进行解析,得到查询条件值,确定查询条件值对应的条件参数,其中,条件参数包括:待查询数据对应的符号参数、待查询数据对应的指数参数,针对预先处理的每个数据区间,若确定该数据区间对应有元数据,则根据该数据区间对应的元数据以及条件参数,进行数据查询,该数据区间对应的元数据用于描述该数据区间内的数据所对应的存储参数,这里的存储参数包括:该数据区间内的数据对应的符号参数、该数据区间内的数据对应的指数参数。

36、从上述方法中可以看出,可以通过对数据表中每个数据区间的数据进行预处理的方式,将数据的存储参数作为元数据进行保存,以使每个数据只需要保存对应的尾数即可,从而可以针对保存的所有数据的存储参数相同的数据区间,可以直接通过比较存储参数的方式,确定出该数据区间中包含的所有数据与查询条件值之间的大小关系,进而可以便于提升在按条件对decimal类型的数据进行数据查询操作时的查询效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1