System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,尤其涉及一种数据分页查询方法、设备、介质及计算机程序。
技术介绍
1、数据分页是数据库管理中的一个关键操作,尤其在处理大规模数据集时更为重要。当数据库一次性加载大量数据时,需要消耗大量系统资源和时间。而通过页查询则可以将数据分段处理,每次只需查询一小部分数据,从而大幅提升查询效率。基于偏移量的分页技术是数据分页的传统方法,在各种业务场景下被广泛使用。它通过在检索并返回一定数量的记录之前,跳过指定数量的记录来访问数据。这种技术经常用于web和数据库应用程序中,以便使用简单的数字偏移量直接导航到特定的页面。
2、基于偏移量的分页技术在对查询结果进行分页时,一般需要从筛选结果集找到指定偏移量的位置,即跳过指定的记录数量,譬如要获取结果集中第10001到第10010条记录,数据库管理系统在执行时需要扫描并跳过前 10000条记录,然后返回之后的10条记录。可想而知,如果偏移量n越大,执行效率就越低,当偏移量数值较大(一般称作深度分页),譬如超过一百万时,可能会导致处理超时,应用程序异常。
技术实现思路
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、本专利技术提供的数据分页查询方法、设备、介质及计算机程序,通过将筛选结果集中排在本页数据之后一定数量的数据作为预读取数据,存放到一个新的临时表中,在处理后续分页查询请求时,首先从该预读取临时表中获取数据。将对大量数据的分页计算转换为对少量数据的分页计算,避免了对大量不需要数据的扫描,可以有效的解决大数据量场景下深度分页查询缓慢的问题,提高了数据库管理系统的处理效率。
本文档来自技高网...【技术保护点】
1.一种数据分页查询方法,其特征在于,包括:
2.根据权利要求1所述的数据分页查询方法,其特征在于,在将筛选结果集中第一指定起始位置至第一指定结束位置之间的数据作为查询结果返回,并读取所述第一指定结束位置至预读取结束位置之间的数据存储于临时表中之前,还包括:
3.根据权利要求2所述的数据分页查询方法,其特征在于,还包括:
4.根据权利要求1所述的数据分页查询方法,其特征在于,在将所述临时表中第二指定起始位置至第二指定结束位置之间的数据作为查询结果返回之前,还包括:
5.根据权利要求4所述的数据分页查询方法,其特征在于,还包括:
6.根据权利要求1-5任一项所述的数据分页查询方法,其特征在于,所述第一结束位置根据所述第一偏移量与所述第一页容量的数值加和确定;所述第二结束位置根据所述第二偏移量与所述第二页容量的数值加和确定。
7.根据权利要求1所述的数据分页查询方法,其特征在于,所述数据分页查询方法还包括:记录所述临时表对应的筛选条件信息;
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并在
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据分页查询方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据分页查询方法。
...【技术特征摘要】
1.一种数据分页查询方法,其特征在于,包括:
2.根据权利要求1所述的数据分页查询方法,其特征在于,在将筛选结果集中第一指定起始位置至第一指定结束位置之间的数据作为查询结果返回,并读取所述第一指定结束位置至预读取结束位置之间的数据存储于临时表中之前,还包括:
3.根据权利要求2所述的数据分页查询方法,其特征在于,还包括:
4.根据权利要求1所述的数据分页查询方法,其特征在于,在将所述临时表中第二指定起始位置至第二指定结束位置之间的数据作为查询结果返回之前,还包括:
5.根据权利要求4所述的数据分页查询方法,其特征在于,还包括:
6.根据权利要求1-5任一项所述的数据分页查询方法,其特征在于,所述第一结束位置根据所述第一偏移量与所述第一页容...
【专利技术属性】
技术研发人员:王强,张志伟,
申请(专利权)人:中电金信软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。