CN108647347B - 分页显示方法、用户设备、存储介质及装置 - Google Patents
分页显示方法、用户设备、存储介质及装置 Download PDFInfo
- Publication number
- CN108647347B CN108647347B CN201810460410.2A CN201810460410A CN108647347B CN 108647347 B CN108647347 B CN 108647347B CN 201810460410 A CN201810460410 A CN 201810460410A CN 108647347 B CN108647347 B CN 108647347B
- Authority
- CN
- China
- Prior art keywords
- data
- sequence number
- preset
- paged
- displayed
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了分页显示方法、用户设备、存储介质及装置。本发明中响应用户输入的分页显示指令,获取待分页数据;通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号;读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。在本发明中区别于现有的“三层嵌套查询”中先进行数据排序再遍历数据为排序后的数据添加对应的序号,将通过预设开窗函数一步完成数据排序与添加序号的两步操作,将“三层嵌套查询”简化为“两层查询”,并显著地提高了总体的查询速度,也就解决了现有的分页显示操作存在的查询速度较慢的技术问题。
Description
技术领域
本发明涉及信息技术领域,尤其涉及分页显示方法、用户设备、存储介质及装置。
背景技术
随着数据库技术的不断发展,甲骨文(Oracle)数据库作为一种较为主流的商用数据库被广泛的应用。
考虑到在Oracle数据库的开发应用过程中,往往处于存储状态的数据以及数据查询操作需要牵涉到的待查询数据的数据量均较大,导致在进行数据查询时查询速度较慢,这会极大地消耗服务器的运算资源。
正是考虑到该查询困难,在Oracle数据库的实际应用层面上,多运用分页显示的方式来完成查询操作,由于分页显示的显示方式在数据查询过程中不会一次性的查询并显示出所有数据,而是仅查询与显示部分的数据,比如,将查询出可显示一页的数据。由于降低了待查询的数据量,也就提高了查询效率。
而分页显示操作的常见实现方式多为“三层嵌套查询”,具体而言,“三层嵌套查询”的第一层操作即最里层操作将查出所有页的数据并进行数据的排序,在完成对于所有页数据的排序后第二层操作将给排序后的数据添加行号(row_num)并取出排序后的数据的行号,第三层操作即最外层操作将根据row_num分页面进行数据显示。
明显地,三层嵌套查询中的第一层操作将查出所有页的数据并完成排序,而第二层操作将再次遍历数据以完成序号的添加,而该种操作方式的耗时时间太长,运行效率较慢,导致“三层嵌套查询”的整体查询效率仍然不高,查询速度较慢,即现有的分页显示操作存在查询速度较慢的技术问题。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供分页显示方法、用户设备、存储介质及装置,旨在解决现有的分页显示操作存在的查询速度较慢的技术问题。
为实现上述目的,本发明提供一种分页显示方法,所述分页显示方法包括以下步骤:
响应用户输入的分页显示指令,获取待分页数据;
通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号;
读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
优选地,所述通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号之后,所述分页显示方法还包括:
接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目;
将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号;
所述读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示,包括:
读取所述二次排序序号,根据读取出的二次排序序号对所述第一待展示数据中的数据条目进行分页显示。
优选地,所述数据过滤规则为模糊查询规则;
所述接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目,包括:
接收用户输入的模糊查询规则,并从所述模糊查询规则中提取预设查询字符;
根据所述预设查询字符与所述初次排序序号遍历各数据条目,确定包含所述预设查询字符的数据条目;
所述将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号,包括:
将确定包含所述预设查询字符的数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号。
优选地,所述读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示,包括:
获取预设序号区间,从所述待分页数据中提取处于所述预设序号区间内的初次排序序号;
将与处于所述预设序号区间内的初次排序序号对应的数据条目进行显示。
优选地,所述获取预设序号区间,从所述待分页数据中提取处于所述预设序号区间内的初次排序序号,包括:
获取预设序号区间,确定所述预设序号区间的区间上限阈值与区间下限阈值;
从所述待分页数据中提取初次排序序号小于等于所述区间上限阈值的数据条目,并在所述待分页数据中根据初次排序序号小于等于所述区间上限阈值的数据条目生成第二待展示数据;
从所述第二待展示数据中提取初次排序序号大于等于所述区间下限阈值的各数据条目,并在所述第二待展示数据中根据初次排序序号大于等于所述区间下限阈值的各数据条目生成第三待展示数据;
所述将与处于所述预设序号区间内的初次排序序号对应的数据条目进行显示,包括:
对所述第三待展示数据中的数据条目进行显示。
优选地,所述响应用户输入的分页显示指令,获取待分页数据之后,所述分页显示方法还包括:
记录获取所述待分页数据的第一时刻;
所述读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示,包括:
记录读取所述初次排序序号的第二时刻;
计算所述第一时刻与所述第二时刻之间的当前时间差,判断所述当前时间差是否小于预设时间差阈值;
当所述当前时间差小于所述预设时间差阈值时,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
优选地,所述计算所述第一时刻与所述第二时刻之间的当前时间差,判断所述当前时间差是否小于预设时间差阈值之后,所述分页显示方法还包括:
当所述当前时间差大于或者等于所述预设时间差阈值时,确定所述当前时间差所处的目标时间区间;
根据所述目标时间区间在预设映射关系中查询对应的目标显示数量,所述预设映射关系中包括时间区间与显示数量的对应关系,所述显示数量为进行分页显示的数据条目的条目数量;
根据所述初次排序序号与所述目标显示数量确定对应的数据条目,并对确定的数据条目进行分页显示。
此外,为实现上述目的,本发明还提出一种用户设备,所述用户设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的分页显示程序,所述分页显示程序配置为实现如上文所述的分页显示方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有分页显示程序,所述分页显示程序被处理器执行时实现如上文所述的分页显示方法的步骤。
此外,为实现上述目的,本发明还提出一种分页显示装置,所述分页显示装置包括:数据获取模块、初次排序模块以及分页显示模块;
所述数据获取模块,用于响应用户输入的分页显示指令,获取待分页数据;
所述初次排序模块,用于通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号;
所述分页显示模块,用于读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
在本发明中将通过预设开窗函数来一次性完成对于待分页数据的排序以及序号添加的操作,进而读取在初次排序中确定的序号并根据序号对待分页数据进行分页显示,其中,考虑到本发明中将通过预设开窗函数一步完成数据排序与添加序号的两步操作,区别于现有的“三层嵌套查询”中先进行数据排序再遍历数据为排序后的数据添加对应的序号,本发明简化了执行步骤,将“三层嵌套查询”简化为“两层查询”,并显著地提高了总体的查询速度,也就解决了现有的分页显示操作存在的查询速度较慢的技术问题。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的用户设备结构示意图;
图2为本发明分页显示方法第一实施例的流程示意图;
图3为本发明分页显示方法第二实施例的流程示意图;
图4为本发明分页显示方法第三实施例的流程示意图;
图5为本发明分页显示方法第四实施例的流程示意图;
图6为本发明分页显示装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的用户设备结构示意图。
如图1所示,该用户设备可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display),可选用户接口1003还可以包括标准的有线接口、无线接口,对于用户接口1003的有线接口在本发明中可为USB接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对用户设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及分页显示程序。
在图1所示的用户设备中,网络接口1004主要用于连接后台服务器,与所述后台服务器进行数据通信;用户接口1003主要用于连接外设;所述用户设备通过处理器1001调用存储器1005中存储的分页显示程序,并执行本发明实施例提供的分页显示方法。
基于上述硬件结构,提出本发明分页显示方法的实施例。
参照图2,图2为本发明分页显示方法第一实施例的流程示意图。
在第一实施例中,所述分页显示方法包括以下步骤:
步骤S10:响应用户输入的分页显示指令,获取待分页数据;
可以理解的是,本实施例的执行主体为用户设备,所述用户设备可为服务器、个人电脑等电子设备。
应当理解的是,考虑到现有的分页显示操作多采用“三层嵌套查询”,而“三层嵌套查询”中将先查出所有页的数据再为所有页的数据添加行号,其中,查出所有页的数据的操作以及为所有页的数据添加行号的操作都是属于需要耗费较大运算量的操作,故而,这将导致“三层嵌套查询”的查询速度较慢。正是考虑到“三层嵌套查询”存在的查询速度较慢的技术问题,本实施例将在执行命令上将“三层查询”简化为“两层查询”,以提高查询速度;而且,在实践中,本实施例提出的“两层查询”的技术方案将比之“三层查询”的速度将近快一倍。
在具体实现中,本实施例记录的“两层查询”的技术方案,将先检测是否存在用户输入或者用户设备自动生成的分页显示指令,在检测到该分页显示指令时,启动“两层查询”的分页显示操作。
步骤S20:通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号;
应当理解的是,在获取到将被分页显示的待分页数据后,可先通过预设开窗函数同时完成对于待分页数据的排序操作以及初次排序序号的添加操作。
在具体实现中,所述预设开窗函数的运行形式可为row_number()over(order bya.x)。其中,order by用于对待分页数据进行初次排序,而row_number()用于为排序后的每条数据条目返回一个对应的序号。显然,通过本实施例描述的预设开窗函数可在一步操作中同时完成待分页数据的“排序”与“添加序号”两步操作。对比于现有的“三层嵌套查询”需要连续的两层查询即两步命令来完成先进行“排序”再进行“添加序号”的操作,而本实施例是在一步操作中同步进行排序以及为排序的数据条目确定序号的操作,自然,也就提高了运行速率。
可以理解的是,在通过预设开窗函数进行对于待分页数据的排序时,将同时为待分页数据中的各排序好的数据条目添加了一个对应的序号,也就省去了在添加序号时的数据遍历环节,可参见表1,表1为数据条目的初次排序前示意图,表2为数据条目的初次排序后示意图。
表1
名称 | 面积 | 均价 |
B | 200 | 40 |
C | 300 | 60 |
A | 100 | 20 |
表2
名称 | 面积 | 均价 | 序号 |
A | 100 | 20 | 1 |
B | 200 | 40 | 2 |
C | 300 | 60 | 3 |
对比表1与表2,显然,通过预设开窗函数的排序与序号确定,表2完成对于各数据条目的排序,并且,表2比之表1多了一列序号列,便于后续根据序号列完成对于待分页数据的分页显示操作。故而,在后续操作中,为了实现对于待分页数据的分页,将读取已记录有的序号并根据已有的序号完成对于数据的分页显示。
其中,所述数据条目为待分页数据中的一行数据,
步骤S30:读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
应当理解的是,在读取出初次排序序号后,可基于该初次排序序号进行灵活的分页显示,比如,若读取出的初次排序序号为1-400,可按照每页50条数据条目的方式进行分页显示,可显示8页;或者,可按照每页100条数据条目的方式进行分页显示,可显示4页。
在本实施例中将通过预设开窗函数来一次性完成对于待分页数据的排序以及序号添加的操作,进而读取在初次排序中确定的序号并根据序号对待分页数据进行分页显示,其中,考虑到本实施例中将通过预设开窗函数一步完成数据排序与添加序号的两步操作,区别于现有的“三层嵌套查询”中先进行数据排序再遍历数据为排序后的数据添加对应的序号,本实施例简化了执行步骤,将“三层嵌套查询”简化为“两层查询”,并显著地提高了总体的查询速度,也就解决了现有的分页显示操作存在的查询速度较慢的技术问题。
参照图3,图3为本发明分页显示方法第二实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明分页显示方法的第二实施例。
第二实施例中,所述步骤S20之后,所述分页显示方法还包括:
步骤S201:接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目;
可以理解的是,常规的分页显示操作只会对待分页数据进行一次排序,考虑到可约束最终进行显示的数据条目的内容,本实施例可在进行分页显示的过程中结合进行数据过滤规则,以进一步地实现对于分页显示结果的精准筛选。
在具体实现中,可按照初次排序序号的序号大小依次判断对应的数据条目是否满足数据过滤规则。其中,所述数据过滤规则可为模糊查询规则,区间查询规则以及条件查询规则等。
步骤S202:将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号;
可以理解的是,比如,数据过滤规则可为条件查询规则,具体而言,参见表2,条件查询规则可为“面积大于等于200”,则将判断表2中的各数据条目是否满足“面积大于等于200”的要求。并且,区别于常规查询手段,本实施例在筛选的过程中将对表2中的数据进行二次排序,以获得更加便于用户阅读的分页显示页面。
其中,二次排序的排序方式可与初次排序相同,均是根据待排序的数据的已有数据排列次序一步步进行数据读取并完成排序。
可参见表3,表3为数据条目的二次排序后的示意图,表3如下。
表3
名称 | 面积 | 均价 | 序号 |
B | 200 | 40 | 1 |
C | 300 | 60 | 2 |
应当理解的是,通过比较表2与表3可知,本实施例将对表2中的数据条目进行二次排序,以筛选出面积大于等于200的数据条目。
所述步骤S30,还可以包括:
步骤S30':读取所述二次排序序号,根据读取出的二次排序序号对所述第一待展示数据中的数据条目进行分页显示。
应当理解的是,正是因为本实施例对表2中的数据条目进行二次排序,最终分页显示出来的页面将如表3所示,而表3中的序号则为二次排序序号,而非初次排序序号。
进一步地,所述数据过滤规则为模糊查询规则;
所述接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目,包括:
接收用户输入的模糊查询规则,并从所述模糊查询规则中提取预设查询字符;根据所述预设查询字符与所述初次排序序号遍历各数据条目,确定包含所述预设查询字符的数据条目;
所述将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号,包括:
将确定包含所述预设查询字符的数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号。
在具体实现中,当数据过滤规则为模糊查询规则时,比如,模糊查询规则为“包括数字2的数据条目”,则预设查询字符为2,将遍历表2中的数据条目以检测出包含数字2的数据条目。由于数据条目中包含多列数据,故而,模糊查询规则可同时应用于多列查询的情况,比如,表2中的数据条目“A,100,20”,“B,200,40”中均包含数字2,则可将这两条数据条目作为第一待展示数据,进行二次排序。
在本实施例中将通过数据过滤规则对分页显示的数据条目进行进一步的筛选,可以实现对于分页显示结果的精准筛选,由于进一步地减少了数据条目的显示量,可以进一步地提高查询速度。而且,由于本实施例应用数据过滤规则的方式为进行二次排序而非简单的数据提取,使得最终显示的分页显示页面将更加便于用户查看,因为,二次排序序号更加便于用户查询结果。并且,由于本实施例的实现基础为预设开窗函数的应用,故而,可稳定oracle数据库的查询速度,以降低多次排序对于查询速度的影响。
参照图4,图4为本发明分页显示方法第三实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明分页显示方法的第三实施例。
在第三实施例中,所述步骤S30,还可以包括:
步骤S301:获取预设序号区间,从所述待分页数据中提取处于所述预设序号区间内的初次排序序号;
可以理解的是,对于分页显示的实现方式,可通过限定每页可显示的数据条目的个数来确定,也可通过设置预设序号区间的方式来确定,从而从待分页数据中筛选出满足预设序号区间要求的数据条目,以达到减少显示数据的数据量的效果。
在具体实现中,比如,所述预设序号区间可为x≤16,6≤x≤16等,x为初次排序序号。
步骤S302:将与处于所述预设序号区间内的初次排序序号对应的数据条目进行显示。
应当理解的是,在获取到预先确定的预设序号区间6≤x≤16后,可从待分页数据中筛选出序号在6≤x≤16的范围内的数据条目,最终仅显示序号在6≤x≤16的范围内的数据条目。
进一步地,所述获取预设序号区间,从所述待分页数据中提取处于所述预设序号区间内的初次排序序号,包括:
获取预设序号区间,确定所述预设序号区间的区间上限阈值与区间下限阈值;从所述待分页数据中提取初次排序序号小于等于所述区间上限阈值的数据条目,并在所述待分页数据中根据初次排序序号小于等于所述区间上限阈值的数据条目生成第二待展示数据;从所述第二待展示数据中提取初次排序序号大于等于所述区间下限阈值的各数据条目,并在所述第二待展示数据中根据初次排序序号大于等于所述区间下限阈值的各数据条目生成第三待展示数据;
所述将与处于所述预设序号区间内的初次排序序号对应的数据条目进行显示,包括:对所述第三待展示数据中的数据条目进行显示。
可以理解的是,本实施例将通过预设序号区间限定了最终可显示的数据条目的数量,可达到减少oracle数据库的反应时间的效果。而对于限定数据条目的数量的方式,可将预设序号区间细化为区间上限阈值与区间下限阈值。
在具体实现中,比如,预设序号区间为6≤x≤16,则区间下限阈值为6,区间上限阈值为16,将先从待分页数据中筛选出x≤16的数据条目,即先筛选出初次排序序号为1至16的16条数据条目,并将序号为1至16的数据条目作为第二待展示数据。接着,对1至16的数据条目进行遍历,以从1至16的数据条目中筛选出序号为6≤x≤16的数据条目,最终实现对于序号为6≤x≤16的数据条目的数据显示。
可以理解的是,本实施例中将先以区间上限阈值进行数据条目的筛选再以区间下限阈值进行数据条目的筛选,这是因为,在oracle数据库的底层运行原理中,对于oracle数据库中的数据条目的查询以及排序,都将从序号1开始,若先以区间下限阈值进行数据条目的筛选再以区间上限阈值进行数据条目的筛选,由于序号1不会大于等于6,将会出现查询报错,或者,查询结果将会不符合预期。但是,通过先以区间上限阈值进行数据条目的筛选并保留筛选结果,再以区间下限阈值进行筛选结果中的数据条目的筛选,则可以规避掉oracle数据库的运行原理导致的可能发生的查询报错的情况,因为,筛选结果已经是排序后的结果无需再进行排序操作,也就规避到了可能发生的查询报错的情况。
在本实施例中通过设置预设序号区间,可以减少数据条目的显示量,进而提高oracle数据库的反应速度;并且,通过先以区间上限阈值进行数据条目的筛选并保留筛选结果,再以区间下限阈值进行筛选结果中的数据条目的筛选,可以规避掉oracle数据库的底层运行原理可能导致的查询报错的情况。并且,在通过预设开窗函数进行分页显示的基础上,结合进上述区间上限阈值与区间下限阈值的筛选方式,可以在保证分页显示动作的稳定实现的前提下,加快分页显示的显示速度。
参照图5,图5为本发明分页显示方法第四实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明分页显示方法的第四实施例。
在第四实施例中,所述步骤S10之后,所述分页显示方法还包括:
步骤S10':记录获取所述待分页数据的第一时刻;
可以理解的是,考虑到oracle数据库在响应分页显示指令时可能存在响应时间较长或者长时间未完成分页显示动作的情况,可统计初次排序的排序时长,以决定是否继续进行分页显示的操作。
在具体实现中,比如,用户设备在响应于用户输入的分页显示指令时将自动获取待分页数据,此时,可记录获取到待分页数据的时刻,即第一时刻。
步骤S30,还可以包括:
步骤S301':记录读取所述初次排序序号的第二时刻;
应当理解的是,在记录好第一时刻后,将通过预设开窗函数进行初次排序并确定初次排序序号,在完成初次排序的动作后将对初次排序序号进行读取,此刻,可记录读取该初次排序序号的时刻,即第二时刻。考虑到读取初次排序序号的动作紧发生于初次排序之后,可将第二时刻理解为初次排序的结束时刻;而第一时刻为获取到待分页数据的时刻,也是初次排序的开始时刻。
步骤S302':计算所述第一时刻与所述第二时刻之间的当前时间差,判断所述当前时间差是否小于预设时间差阈值;
可以理解的是,计算出的第一时刻与第二时刻之差即为初次排序的排序耗时,为了降低因为分页显示操作的整体耗时较长带来的查询速度较慢的消极性能影响,可将排序耗时与预设时间差阈值进行比对,仅在排序耗时小于该预设时间差阈值时进行后续的分页显示操作,从而保证了分页显示的完成速度,保证了用户的较好体验以及较快的查询速度。
步骤S303':当所述当前时间差小于所述预设时间差阈值时,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
进一步地,所述步骤S302'之后,所述分页显示方法还包括:
步骤S3031:当所述当前时间差大于或者等于所述预设时间差阈值时,确定所述当前时间差所处的目标时间区间;
可以理解的是,而当排序耗时不小于该预设时间差阈值时,可进行分页显示指令的中止操作,并向用户反馈响应失败的提示信息。但是,考虑到初次排序即使排序耗时较长,但是,用户可能仍存在查看该分页显示的显示信息的需求。为了平衡对于响应速度的要求以及查看显示信息的用户需求,可仅显示部分的待分页数据以供用户查看,同时,也保证了响应速度处于一个较好的范围内。
步骤S3032:根据所述目标时间区间在预设映射关系中查询对应的目标显示数量,所述预设映射关系中包括时间区间与显示数量的对应关系,所述显示数量为进行分页显示的数据条目的条目数量;
在具体实现中,若计算出当前时间差为5秒,预先设置多个时间区间,比如,时间区间包括0<t≤1秒、1<t≤3秒以及3<t≤6秒等,t表示时间,而当前时间差正处于3<t≤6秒的范围内。
可以理解的是,将根据时间区间来确定对应的数据条目的显示数量,预设映射关系中将设置为,时间区间表示的时间越长,则显示数量越少。这是因为,时间区间即时间差越长则表示排序耗时越久,为了使得数据条目可以更快地进行分页显示,则可仅读取较少的数据条目,以加快反应速度。
步骤S3033:根据所述初次排序序号与所述目标显示数量确定对应的数据条目,并对确定的数据条目进行分页显示。
应当理解的是,在成功确定与目标时间区间“3<t≤6”对应的目标显示数量后,可仅显示与目标显示数量对应的数据条目,以完成对于部分数据条目的显示,以补偿排序花费的较长耗时,保证响应速度处于一个较好的范围内。
在本实施例中通过记录初次排序的排序耗时,并在初次排序的排序耗时小于预设时间差阈值时进行分页显示的显示操作,可以保证分页显示指令的响应速度处于较高的水平上;并且,通过预先设置时间区间与显示数量的对应关系,可以使得在初次排序耗时较长时,仅读取并显示部分的数据条目,以保证分页显示的查询速度处于一个较高的水平。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有分页显示程序,所述分页显示程序被处理器执行时实现如上文所述的分页显示方法的步骤。
此外,参照图6,本发明实施例还提出一种分页显示装置,所述分页显示装置包括:数据获取模块10、初次排序模块20以及分页显示模块30;
所述数据获取模块10,用于响应用户输入的分页显示指令,获取待分页数据;
所述初次排序模块20,用于通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号;
所述分页显示模块30,用于读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
在本实施例中将通过预设开窗函数来同步完成对于待分页数据的排序与确定数据条目的序号的操作,并可根据排序后的序号完成待分页数据的分页显示。考虑到本实施例中将同步进行数据排序与序号确定的操作,区别于现有的“三层嵌套查询”中先进行数据排序再为排序后的数据添加对应的序号,本实施例简化了执行步骤,将“三层嵌套查询”简化为“两层查询”,并显著地提高了总体的查询速度,也就解决了现有的分页显示操作存在的查询速度较慢的技术问题。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种分页显示方法,其特征在于,所述分页显示方法包括以下步骤:
响应用户输入的分页显示指令,获取待分页数据;
通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号,所述预设开窗函数是用于同步进行排序以及排序的数据条目确定序号操作的函数;
读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示;
接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目;
将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号;
读取所述二次排序序号,根据读取出的二次排序序号对所述第一待展示数据中的数据条目进行分页显示;
其中,所述数据过滤规则为模糊查询规则;
所述接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目,包括:
接收用户输入的模糊查询规则,并从所述模糊查询规则中提取预设查询字符;
根据所述预设查询字符与所述初次排序序号遍历各数据条目,确定包含所述预设查询字符的数据条目;
所述将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号,包括:
将确定包含所述预设查询字符的数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号。
2.如权利要求1所述的分页显示方法,其特征在于,所述读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示,包括:
获取预设序号区间,从所述待分页数据中提取处于所述预设序号区间内的初次排序序号;
将与处于所述预设序号区间内的初次排序序号对应的数据条目进行显示。
3.如权利要求2所述的分页显示方法,其特征在于,所述获取预设序号区间,从所述待分页数据中提取处于所述预设序号区间内的初次排序序号,包括:
获取预设序号区间,确定所述预设序号区间的区间上限阈值与区间下限阈值;
从所述待分页数据中提取初次排序序号小于等于所述区间上限阈值的数据条目,并在所述待分页数据中根据初次排序序号小于等于所述区间上限阈值的数据条目生成第二待展示数据;
从所述第二待展示数据中提取初次排序序号大于等于所述区间下限阈值的各数据条目,并在所述第二待展示数据中根据初次排序序号大于等于所述区间下限阈值的各数据条目生成第三待展示数据;
所述将与处于所述预设序号区间内的初次排序序号对应的数据条目进行显示,包括:
对所述第三待展示数据中的数据条目进行显示。
4.如权利要求1所述的分页显示方法,其特征在于,所述响应用户输入的分页显示指令,获取待分页数据之后,所述分页显示方法还包括:
记录获取所述待分页数据的第一时刻;
所述读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示,包括:
记录读取所述初次排序序号的第二时刻;
计算所述第一时刻与所述第二时刻之间的当前时间差,判断所述当前时间差是否小于预设时间差阈值;
当所述当前时间差小于所述预设时间差阈值时,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示。
5.如权利要求4所述的分页显示方法,其特征在于,所述计算所述第一时刻与所述第二时刻之间的当前时间差,判断所述当前时间差是否小于预设时间差阈值之后,所述分页显示方法还包括:
当所述当前时间差大于或者等于所述预设时间差阈值时,确定所述当前时间差所处的目标时间区间;
根据所述目标时间区间在预设映射关系中查询对应的目标显示数量,所述预设映射关系中包括时间区间与显示数量的对应关系,所述显示数量为进行分页显示的数据条目的条目数量;
根据所述初次排序序号与所述目标显示数量确定对应的数据条目,并对确定的数据条目进行分页显示。
6.一种用户设备,其特征在于,所述用户设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行分页显示程序,所述分页显示程序被所述处理器执行时实现如权利要求1至5中任一项所述的分页显示方法的步骤。
7.一种存储介质,其特征在于,所述存储介质上存储有分页显示程序,所述分页显示程序被处理器执行时实现如权利要求1至5中任一项所述的分页显示方法的步骤。
8.一种分页显示装置,其特征在于,所述分页显示装置包括:数据获取模块、初次排序模块以及分页显示模块;
所述数据获取模块,用于响应用户输入的分页显示指令,获取待分页数据;
所述初次排序模块,用于通过预设开窗函数对所述待分页数据进行初次排序,以及在初次排序过程中对所述待分页数据中的各数据条目添加对应的初次排序序号,所述预设开窗函数是用于同步进行排序以及排序的数据条目确定序号操作的函数;
所述分页显示模块,用于读取所述初次排序序号,根据读取出的初次排序序号对所述待分页数据中的数据条目进行分页显示;
所述分页显示模块,还用于接收用户输入的数据过滤规则,并从所述初次排序序号对应的各数据条目中确定满足所述数据过滤规则的数据条目;将满足所述数据过滤规则的各数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号;读取所述二次排序序号,根据读取出的二次排序序号对所述第一待展示数据中的数据条目进行分页显示;
所述分页显示模块,还用于接收用户输入的模糊查询规则,并从所述模糊查询规则中提取预设查询字符;根据所述预设查询字符与所述初次排序序号遍历各数据条目,确定包含所述预设查询字符的数据条目,将确定包含所述预设查询字符的数据条目作为第一待展示数据,并采用所述预设开窗函数对所述第一待展示数据进行二次排序,以及在二次排序过程中对所述第一待展示数据中的各数据条目添加对应的二次排序序号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810460410.2A CN108647347B (zh) | 2018-05-14 | 2018-05-14 | 分页显示方法、用户设备、存储介质及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810460410.2A CN108647347B (zh) | 2018-05-14 | 2018-05-14 | 分页显示方法、用户设备、存储介质及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108647347A CN108647347A (zh) | 2018-10-12 |
CN108647347B true CN108647347B (zh) | 2023-07-11 |
Family
ID=63755580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810460410.2A Active CN108647347B (zh) | 2018-05-14 | 2018-05-14 | 分页显示方法、用户设备、存储介质及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108647347B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112527824B (zh) * | 2019-09-17 | 2023-04-18 | 浙江宇视科技有限公司 | 分页查询方法、装置、电子设备和计算机可读存储介质 |
CN112162990B (zh) * | 2020-09-30 | 2023-09-08 | 中国工商银行股份有限公司 | 业务数据跨库排序方法、装置及系统 |
CN115858628A (zh) * | 2021-12-28 | 2023-03-28 | 上海右云信息技术有限公司 | 一种获取多列数据的综合排列数据的方法与设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794146A (zh) * | 2014-12-22 | 2015-07-22 | 广州唯品会信息科技有限公司 | 商品实时筛选和排序的方法和装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1282113C (zh) * | 2004-03-03 | 2006-10-25 | 北京大学 | 一种基于快速排序算法的快速分页排序方法 |
JP4836096B2 (ja) * | 2008-11-10 | 2011-12-14 | キヤノンマーケティングジャパン株式会社 | 電子帳票サーバ、電子帳票サーバの制御方法、プログラム、及び、記録媒体 |
US8788972B2 (en) * | 2011-01-26 | 2014-07-22 | Cisco Technology, Inc. | Graphical display for sorting and filtering a list in a space-constrained view |
CN103678408B (zh) * | 2012-09-21 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 一种查询数据的方法及装置 |
CN104216902B (zh) * | 2013-05-31 | 2018-10-02 | 西门子公司 | 一种基于服务器分页的分页数据装载方法、装置和系统 |
CN104504132A (zh) * | 2014-12-31 | 2015-04-08 | 天津南大通用数据技术股份有限公司 | 一种数据分析查询中自定义排序实现方法 |
US10929508B2 (en) * | 2015-04-30 | 2021-02-23 | Merge Healthcare Solutions Inc. | Database systems and interactive user interfaces for dynamic interaction with, and indications of, digital medical image data |
CN106776616B (zh) * | 2015-11-20 | 2020-03-06 | 北京国双科技有限公司 | 合并对称实体组的方法及装置 |
CN107315753B (zh) * | 2016-04-27 | 2020-11-03 | 北京京东尚科信息技术有限公司 | 跨多数据库的分页方法和装置 |
CN107577808B (zh) * | 2017-09-26 | 2020-03-17 | 武汉斗鱼网络科技有限公司 | 一种多级列表页排序的方法、装置、服务器及介质 |
-
2018
- 2018-05-14 CN CN201810460410.2A patent/CN108647347B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794146A (zh) * | 2014-12-22 | 2015-07-22 | 广州唯品会信息科技有限公司 | 商品实时筛选和排序的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108647347A (zh) | 2018-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110825957B (zh) | 基于深度学习的信息推荐方法、装置、设备及存储介质 | |
CN108647347B (zh) | 分页显示方法、用户设备、存储介质及装置 | |
US10977317B2 (en) | Search result displaying method and apparatus | |
US8880548B2 (en) | Dynamic search interaction | |
CN109766492B (zh) | 学习推荐方法、装置、设备和可读介质 | |
CN107273457A (zh) | 一种搜索方法及装置、计算机装置和计算机可读存储介质 | |
CN111459503B (zh) | web前端项目部署方法、装置、服务器及存储介质 | |
CN107315833A (zh) | 基于应用程序的检索与下载的方法和装置 | |
CN110019913A (zh) | 图片匹配方法、用户设备、存储介质及装置 | |
CN106095258B (zh) | 一种基于移动终端的电子书换页方法及系统 | |
CN110516164A (zh) | 一种信息推荐方法、装置、设备及存储介质 | |
CN104077288A (zh) | 网页内容推荐方法和网页内容推荐设备 | |
CN113343109A (zh) | 榜单推荐方法、计算设备及计算机存储介质 | |
CN108197288B (zh) | 根据用户特征偏好的房源推送方法、装置、设备及介质 | |
CN110399087A (zh) | 屏幕触控的控制方法、终端设备及计算机可读存储介质 | |
CN114240132A (zh) | 业务流程编排执行方法、装置、计算机设备及存储介质 | |
CN114119139A (zh) | 一种信息推荐方法、装置、存储介质及电子设备 | |
CN110515946B (zh) | 数据提取方法、装置、设备及计算机可读存储介质 | |
CN110658968B (zh) | 图片类电子书的翻页处理方法及电子设备 | |
US20130268361A1 (en) | Systems and methods for implementing a user-directed landing page for generating enhanced user contact information based on user interactive computer searches | |
JP6168963B2 (ja) | 情報検索装置、情報検索方法、およびプログラム | |
CN112257856A (zh) | 深度学习框架确定方法、设备及可读存储介质 | |
WO2020247086A1 (en) | Detection of layout table(s) by a screen reader | |
CN112131840A (zh) | 页面处理方法、装置、存储介质和处理器 | |
US20240211830A1 (en) | System and method for managing issues based on cognitive loads |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |