CN107992516A - 电子装置、数据查询的方法及存储介质 - Google Patents
电子装置、数据查询的方法及存储介质 Download PDFInfo
- Publication number
- CN107992516A CN107992516A CN201711029511.6A CN201711029511A CN107992516A CN 107992516 A CN107992516 A CN 107992516A CN 201711029511 A CN201711029511 A CN 201711029511A CN 107992516 A CN107992516 A CN 107992516A
- Authority
- CN
- China
- Prior art keywords
- data
- window function
- paging
- group
- grouped
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种电子装置、数据查询的方法及存储介质,数据查询的方法包括:接收用户输入的包含窗口函数的SQL查询语句,所述窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数;在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;对分页后的各组分组数据转换为待输出的形式并执行输出。本发明能够简化数据库查询操作,提高数据库查询的效率。
Description
技术领域
本发明涉及数据库技术领域,尤其涉及一种电子装置、数据查询的方法及存储介质。
背景技术
目前,在对数据库中的数据进行分组分页查询时,例如对于某一组数据,需要发送查询该组数据的总数的请求及发送查询该组数据的实际详细数据的请求,需要用户进行2次操作。如果查询N组数据,则需要用户发送N+N个请求,即进行2N次操作,这种查询方式比较繁琐,使得数据库分组分页查询的效率低下。
发明内容
本发明的目的在于提供一种电子装置、数据查询的方法及存储介质,旨在简化数据库查询操作,提高数据库查询的效率。
为实现上述目的,本发明提供一种电子装置,所述电子装置包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理系统被所述处理器执行时实现如下步骤:
接收窗口函数步骤:接收用户输入的包含窗口函数的SQL查询语句,所述窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数;
分组分页查询步骤:在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;
输出步骤:对分页后的各组分组数据转换为待输出的形式并执行输出。
优选地,所述输出步骤,具体包括:
对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,直至将各组分组数据载入对应的新建的表中;
在载入数据完成后,以同组同表的形式执行数据输出。
优选地,所述输出步骤,具体包括:
对分页后的每组分组数据新建对应的视图,在每一视图中载入对应的分页后的分组数据,以视图的形式执行数据输出。
优选地,所述窗口函数还包括统计窗口函数,所述处理系统被所述处理器执行时,还包括:
基于所述统计窗口函数对分页后的各组分组数据按照预定义的统计字段进行数据统计。
为实现上述目的,本发明还提供一种数据查询的方法,所述数据查询的方法包括:
S1,接收用户输入的包含窗口函数的SQL查询语句,所述窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数;
S2,在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;
S3,对分页后的各组分组数据转换为待输出的形式并执行输出。
优选地,所述步骤S3,具体包括:
对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,直至将各组分组数据载入对应的新建的表中;
在载入数据完成后,以同组同表的形式执行数据输出。
优选地,所述步骤S3,具体包括:
对分页后的每组分组数据新建对应的视图,在每一视图中载入对应的分页后的分组数据,以视图的形式执行数据输出。
优选地,所述窗口函数还包括统计窗口函数,所述步骤S3之前,还包括:
基于所述统计窗口函数对分页后的各组分组数据按照预定义的统计字段进行数据统计。
优选地,所述排序字段为可递增的字段或可递减的字段。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现上述的数据查询的方法的步骤。
本发明的有益效果是:本发明利用窗口函数对数据库的数据进行分组分页查询:在执行SQL查询语句时,获取数据库中与分区窗口函数的分组字段对应的分组数据,基于排序窗口函数的排序字段对各组分组数据进行排序,并基于分页窗口函数对排序后的各组分组数据进行分页,对分页后的分组数据转换为待输出的形式并执行输出,本发明在进行查询时,只需要用户输入包含窗口函数的SQL查询语句,进行一次操作即可,操作简单快捷,极大地提高数据库查询的效率。
附图说明
图1为本发明各个实施例一可选的应用环境示意图;
图2为本发明数据查询的方法一实施例的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明数据查询的方法的较佳实施例的应用环境示意图。该应用环境示意图包括电子装置1及终端设备2。电子装置1可以通过网络、近场通信技术等适合的技术与终端设备2进行数据交互。
所述终端设备2包括,但不限于,任何一种可与用户通过键盘、鼠标、遥控器、触摸板或者声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(InternetProtocol Television,IPTV)、智能式穿戴式设备、导航装置等等的可移动设备,或者诸如数字TV、台式计算机、笔记本、服务器等等的固定终端。用户在终端设备2输入SQL查询语句,将SQL查询语句发送至电子装置1,电子装置1根据SQL查询语句执行查询。
所述电子装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述电子装置1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
在本实施例中,电子装置1可包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,存储器11存储有可在处理器12上运行的处理系统。需要指出的是,图1仅示出了具有组件11-13的电子装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子装置1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子装置1的内部存储单元,例如该电子装置1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子装置1的外部存储设备,例如电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子装置1的操作系统和各类应用软件,例如本发明一实施例中的处理系统的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子装置1的总体操作,例如执行与所述终端设备2进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行处理系统等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述电子装置1与其他电子设备之间建立通信连接。本实施例中,网络接口13主要用于将电子装置1与一个或多个终端设备2相连,在电子装置1与一个或多个终端设备2之间建立数据传输通道和通信连接。
所述处理系统存储在存储器11中,包括至少一个存储在存储器11中的计算机可读指令,该至少一个计算机可读指令可被处理器器12执行,以实现本申请各实施例的方法;以及,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。
在一实施例中,上述处理系统被所述处理器12执行时实现如下步骤:
接收窗口函数步骤:接收用户输入的包含窗口函数的SQL查询语句;
对于SQL查询,是指从数据库中取得数据的子集。本实施例中,用户在终端设备2上进行操作,可以直接编写包括包含窗口函数的SQL查询语句;或者基于预定的包含窗口函数的SQL查询结构输入对应的相关数据,形成SQL查询语句,例如当需要对各个班级的课程及成绩进行查询时,该相关数据包括各班级的名称、课程的名称及科目名称等,将该SQL查询语句发送给电子装置1执行查询,电子装置1利用该SQL查询语句可以实现分组分页查询。
其中,窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数,分区窗口函数优选为PARTION BY分区查询函数,PARTITION BY分区查询函数用于将数据按照特定字段进行分组,当然,分区窗口函数也可以是其他的函数,例如GROUP BY分组查询函数等。排序窗口函数优选为ORDER BY排名函数,当然,排序窗口函数也可以是其他的排序函数,例如ROW_NUMBER排名函数、RANK排名函数、DENSE_RANK排名函数或者NTILE排名函数等。分页窗口函数例如为ROW NUMBER函数。
分组分页查询步骤:在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;
本实施例中,分区窗口函数将数据按照特定字段或按照边界值分组,在执行过程中,如果超出了分组,则分区窗口函数会重新计算,例如,将某部分数据分为男性和女性两部分,则针对这两字段进行分组,将属于男性的数据分到一组,将属于女性的数据分到另一组。排序窗口函数将分组后的数据进行强制排序,包括升序(ASC)和降序(DESC),如果不指定升序或者降序,则默认为升序(由小到大)。排序窗口函数的排序字段为可递增或可递减的字段,优选地,排序字段的类型包括字符、数字或者时间,例如为ID号码、数据生成时间等等。分页窗口函数可与分区窗口函数一起使用,当穿越分区边界时,分页窗口函数将前面的数据分为一页,然后开始下一页的计算。
优选地,所述窗口函数还包括统计窗口函数,所述处理系统被所述处理器执行时,还包括:基于所述统计窗口函数对分页后的各组分组数据按照预定义的统计字段进行数据统计,其中,预定义的统计字段例如为订单号,统计窗口函数可以统计各组分组数据的预定字段的数量或总和等,以方便用户查看。
输出步骤:对分页后的各组分组数据转换为待输出的形式并执行输出。
本实施例中,对统计后的各组分组数据转换为待输出的分组分页的形式时,例如对同组的分组数据进行相同标识,对不同组的分组数据进行不同标识,对于每一组分组数据采用分页的形式,以预定的行数为一页排布数据,超过该预定的行数之后的数据排布到另一页,以此类推,其他组的数据做同样的处理,以便以分组分页的形式输出查询到数据。
在一实施例中,以查询数据库中属于同一客户的所有订单为例进行分组分页:
用户输入包含窗口函数的SQL查询语句,在SQL查询语句中,分区窗口函数(PARTITON BY)中的分组字段例如为客户1、客户2及客户3,每一客户为一组,排序窗口函数(ORDER BY)中的排序字段例如为按照订单生成时间。在执行SQL查询语句时,获取数据库中与分组字段对应的分组数据,即获取客户1的所有订单、获取客户2的所有订单及获取客户3的所有订单,按照排序字段分别对客户1、客户2及客户3的各组分组数据进行排序,例如按照订单生成时间分别对客户1、客户2及客户3的分组数据进行排序,然后利用分页窗口函数分别对排序后的客户1、客户2及客户3的订单分页,分别得到客户1、客户2及客户3对应的数据,然后利用统计窗口函数分别对客户1、客户2及客户3的订单统计对应的总数,分别得到客户1、客户2及客户3对应的订单总数,对客户1、客户2及客户3对应的订单转换为待输出的分组分页的形式,并执行输出,该分组分页的形式例如为一组一表的形式,每一表可以有一页或多页。
与现有技术相比,本实施例利用窗口函数对数据库的数据进行分组分页查询:在执行SQL查询语句时,获取数据库中与分区窗口函数的分组字段对应的分组数据,基于排序窗口函数的排序字段对各组分组数据进行排序,并基于分页窗口函数对排序后的各组分组数据进行分页,对分页后的分组数据转换为待输出的形式并执行输出,本实施例在进行查询时,只需要用户输入包含窗口函数的SQL查询语句,进行一次操作即可,操作简单快捷,极大地提高数据库查询的效率。
在一优选的实施例中,在上述图1的实施例的基础上,所述输出步骤,具体包括:
对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,直至将各组分组数据载入对应的新建的表中;
在载入数据完成后,以同组同表的形式执行数据输出。
本实施例中,对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,例如表1对应客户1的所有订单的数据,表2对应客户2的所有订单的数据,表3对应客户3的所有订单的数据,在每一表中,第一页分组数据对应载入表中的第一页,第二页分组数据对应载入表中的第二页,以此类推,直至将各组分组数据载入对应的新建的表中,在载入数据完成后,以同组同表的形式执行数据输出。
本实施例中在载入数据完成后,以同组同表的形式执行数据输出,方便用户进行数据的查看及使用。
在另一优选的实施例中,在上述图1的实施例的基础上,所述输出步骤,具体包括:
对分页后的每组分组数据新建对应的视图,在每一视图中载入对应的分页后的分组数据,以视图的形式执行数据输出。
本实施例中,对分页后的每组分组数据新建对应的视图,在新建的视图中添加所要载入的分页后的分组数据,每组分组数据对应一个视图,直至将各组分组数据载入对应的新建的视图中,在载入数据完成后,以视图的形式执行数据输出。
本实施例中在载入数据完成后,以视图的形式执行数据输出,方便用户进行数据的查看及使用。
如图2所示,图2为本发明数据查询的方法一实施例的流程示意图,该数据查询的方法包括以下步骤:
步骤S1,接收用户输入的包含窗口函数的SQL查询语句,所述窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数;
对于SQL查询,是指从数据库中取得数据的子集。本实施例中,用户在终端设备2上进行操作,可以直接编写包括包含窗口函数的SQL查询语句;或者基于预定的包含窗口函数的SQL查询结构输入对应的相关数据,形成SQL查询语句,例如当需要对各个班级的课程及成绩进行查询时,该相关数据包括各班级的名称、课程的名称及科目名称等,将该SQL查询语句发送给电子装置1执行查询,电子装置1利用该SQL查询语句可以实现分组分页查询。
其中,窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数,分区窗口函数优选为PARTION BY分区查询函数,PARTITION BY分区查询函数用于将数据按照特定字段进行分组,当然,分区窗口函数也可以是其他的函数,例如GROUP BY分组查询函数等。排序窗口函数优选为ORDER BY排名函数,当然,排序窗口函数也可以是其他的排序函数,例如ROW_NUMBER排名函数、RANK排名函数、DENSE_RANK排名函数或者NTILE排名函数等。分页窗口函数例如为ROW NUMBER函数。
步骤S2,在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;
本实施例中,分区窗口函数将数据按照特定字段或按照边界值分组,在执行过程中,如果超出了分组,则分区窗口函数会重新计算,例如,将某部分数据分为男性和女性两部分,则针对这两字段进行分组,将属于男性的数据分到一组,将属于女性的数据分到另一组。排序窗口函数将分组后的数据进行强制排序,包括升序(ASC)和降序(DESC),如果不指定升序或者降序,则默认为升序(由小到大)。排序窗口函数的排序字段为可递增或可递减的字段,优选地,排序字段的类型包括字符、数字或者时间,例如为ID号码、数据生成时间等等。分页窗口函数可与分区窗口函数一起使用,当穿越分区边界时,分页窗口函数将前面的数据分为一页,然后开始下一页的计算。
优选地,所述窗口函数还包括统计窗口函数,所述处理系统被所述处理器执行时,还包括:基于所述统计窗口函数对分页后的各组分组数据按照预定义的统计字段进行数据统计,其中,预定义的统计字段例如为订单号,统计窗口函数可以统计各组分组数据的预定字段的数量或总和等,以方便用户查看。
步骤S3,对分页后的各组分组数据转换为待输出的形式并执行输出。
本实施例中,对统计后的各组分组数据转换为待输出的分组分页的形式时,例如对同组的分组数据进行相同标识,对不同组的分组数据进行不同标识,对于每一组分组数据采用分页的形式,以预定的行数为一页排布数据,超过该预定的行数之后的数据排布到另一页,以此类推,其他组的数据做同样的处理,以便以分组分页的形式输出查询到数据。
在一实施例中,以查询数据库中属于同一客户的所有订单为例进行分组分页:
用户输入包含窗口函数的SQL查询语句,在SQL查询语句中,分区窗口函数(PARTITON BY)中的分组字段例如为客户1、客户2及客户3,每一客户为一组,排序窗口函数(ORDER BY)中的排序字段例如为按照订单生成时间。在执行SQL查询语句时,获取数据库中与分组字段对应的分组数据,即获取客户1的所有订单、获取客户2的所有订单及获取客户3的所有订单,按照排序字段分别对客户1、客户2及客户3的各组分组数据进行排序,例如按照订单生成时间分别对客户1、客户2及客户3的分组数据进行排序,然后利用分页窗口函数分别对排序后的客户1、客户2及客户3的订单分页,分别得到客户1、客户2及客户3对应的数据,然后利用统计窗口函数分别对客户1、客户2及客户3的订单统计对应的总数,分别得到客户1、客户2及客户3对应的订单总数,对客户1、客户2及客户3对应的订单转换为待输出的分组分页的形式,并执行输出,该分组分页的形式例如为一组一表的形式,每一表可以有一页或多页。
与现有技术相比,本实施例利用窗口函数对数据库的数据进行分组分页查询:在执行SQL查询语句时,获取数据库中与分区窗口函数的分组字段对应的分组数据,基于排序窗口函数的排序字段对各组分组数据进行排序,并基于分页窗口函数对排序后的各组分组数据进行分页,对分页后的分组数据转换为待输出的形式并执行输出,本实施例在进行查询时,只需要用户输入包含窗口函数的SQL查询语句,进行一次操作即可,操作简单快捷,极大地提高数据库查询的效率。
在一优选的实施例中,在上述图2的实施例的基础上,所述步骤S3,具体包括:
对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,直至将各组分组数据载入对应的新建的表中;
在载入数据完成后,以同组同表的形式执行数据输出。
本实施例中,对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,例如表1对应客户1的所有订单的数据,表2对应客户2的所有订单的数据,表3对应客户3的所有订单的数据,在每一表中,第一页分组数据对应载入表中的第一页,第二页分组数据对应载入表中的第二页,以此类推,直至将各组分组数据载入对应的新建的表中,在载入数据完成后,以同组同表的形式执行数据输出。
本实施例中在载入数据完成后,以同组同表的形式执行数据输出,方便用户进行数据的查看及使用。
在一优选的实施例中,在上述图2的实施例的基础上,所述步骤S3,具体包括:
对分页后的每组分组数据新建对应的视图,在每一视图中载入对应的分页后的分组数据,以视图的形式执行数据输出。
本实施例中,对分页后的每组分组数据新建对应的视图,在新建的视图中添加所要载入的分页后的分组数据,每组分组数据对应一个视图,直至将各组分组数据载入对应的新建的视图中,在载入数据完成后,以视图的形式执行数据输出。
本实施例中在载入数据完成后,以视图的形式执行数据输出,方便用户进行数据的查看及使用。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现上述的数据查询的方法的步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种电子装置,其特征在于,所述电子装置包括存储器及与所述存储器连接的处理器,所述存储器中存储有可在所述处理器上运行的处理系统,所述处理系统被所述处理器执行时实现如下步骤:
接收窗口函数步骤:接收用户输入的包含窗口函数的SQL查询语句,所述窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数;
分组分页查询步骤:在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;
输出步骤:对分页后的各组分组数据转换为待输出的形式并执行输出。
2.根据权利要求1所述的电子装置,其特征在于,所述输出步骤,具体包括:
对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,直至将各组分组数据载入对应的新建的表中;
在载入数据完成后,以同组同表的形式执行数据输出。
3.根据权利要求1所述的电子装置,其特征在于,所述输出步骤,具体包括:
对分页后的每组分组数据新建对应的视图,在每一视图中载入对应的分页后的分组数据,以视图的形式执行数据输出。
4.根据权利要求1至3任一项所述的电子装置,其特征在于,所述窗口函数还包括统计窗口函数,所述处理系统被所述处理器执行时,还包括:
基于所述统计窗口函数对分页后的各组分组数据按照预定义的统计字段进行数据统计。
5.一种数据查询的方法,其特征在于,所述数据查询的方法包括:
S1,接收用户输入的包含窗口函数的SQL查询语句,所述窗口函数包括分区窗口函数、排序窗口函数及分页窗口函数;
S2,在执行所述SQL查询语句时,获取数据库中与所述分区窗口函数的各分组字段对应的分组数据,基于所述排序窗口函数的排序字段对各组分组数据进行排序,并基于所述分页窗口函数对排序后的各组分组数据进行分页;
S3,对分页后的各组分组数据转换为待输出的形式并执行输出。
6.根据权利要求5所述的数据查询的方法,其特征在于,所述步骤S3,具体包括:
对分页后的每组分组数据按照分页的顺序逐页载入新建的表中,直至将各组分组数据载入对应的新建的表中;
在载入数据完成后,以同组同表的形式执行数据输出。
7.根据权利要求5所述的数据查询的方法,其特征在于,所述步骤S3,具体包括:
对分页后的每组分组数据新建对应的视图,在每一视图中载入对应的分页后的分组数据,以视图的形式执行数据输出。
8.根据权利要求5至7任一项所述的数据查询的方法,其特征在于,所述窗口函数还包括统计窗口函数,所述步骤S3之前,还包括:
基于所述统计窗口函数对分页后的各组分组数据按照预定义的统计字段进行数据统计。
9.根据权利要求5所述的数据查询的方法,其特征在于,所述排序字段为可递增的字段或可递减的字段。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有处理系统,所述处理系统被处理器执行时实现如权利要求5至9中任一项所述的数据查询的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711029511.6A CN107992516A (zh) | 2017-10-27 | 2017-10-27 | 电子装置、数据查询的方法及存储介质 |
PCT/CN2018/077673 WO2019080431A1 (zh) | 2017-10-27 | 2018-02-28 | 电子装置、数据查询的方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711029511.6A CN107992516A (zh) | 2017-10-27 | 2017-10-27 | 电子装置、数据查询的方法及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107992516A true CN107992516A (zh) | 2018-05-04 |
Family
ID=62031072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711029511.6A Pending CN107992516A (zh) | 2017-10-27 | 2017-10-27 | 电子装置、数据查询的方法及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107992516A (zh) |
WO (1) | WO2019080431A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857771A (zh) * | 2019-01-31 | 2019-06-07 | 平安科技(深圳)有限公司 | 具有排名的sql排列的获取方法、装置和计算机设备 |
CN112199407A (zh) * | 2020-10-12 | 2021-01-08 | 上海达梦数据库有限公司 | 一种数据分组排序方法、装置、设备及存储介质 |
CN113204602A (zh) * | 2021-05-07 | 2021-08-03 | 星环信息科技(上海)股份有限公司 | 数据处理方法、装置、设备及存储介质 |
CN113723696A (zh) * | 2021-09-07 | 2021-11-30 | 上海达梦数据库有限公司 | 一种排名分析函数处理方法、装置、电子设备及存储介质 |
CN113779061A (zh) * | 2021-02-04 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | Sql语句的处理方法、装置、介质及电子设备 |
CN114238377A (zh) * | 2021-12-17 | 2022-03-25 | 广州海量数据库技术有限公司 | OpenGauss中实现percentile_cont分析函数的方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116361319B (zh) * | 2023-05-17 | 2023-08-29 | 山东浪潮科学研究院有限公司 | 一种数据库查询方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020029207A1 (en) * | 2000-02-28 | 2002-03-07 | Hyperroll, Inc. | Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein |
CN101197876A (zh) * | 2006-12-06 | 2008-06-11 | 中兴通讯股份有限公司 | 一种对消息类业务数据进行多维分析的方法和系统 |
CN101251861A (zh) * | 2008-03-18 | 2008-08-27 | 北京锐安科技有限公司 | 一种海量数据加载和查询的方法 |
CN103678634A (zh) * | 2013-12-19 | 2014-03-26 | 北京锐安科技有限公司 | 一种提高J-Hi开源开发平台中数据查询速度的方法 |
CN105786808A (zh) * | 2014-12-15 | 2016-07-20 | 阿里巴巴集团控股有限公司 | 一种用于分布式执行关系型计算指令的方法与设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521406B (zh) * | 2011-12-26 | 2014-06-25 | 中国科学院计算技术研究所 | 海量结构化数据复杂查询任务的分布式查询方法和系统 |
US10929360B2 (en) * | 2015-10-19 | 2021-02-23 | Oracle International Corporation | Filtered partition maintenance operations |
CN105653611B (zh) * | 2015-12-24 | 2019-08-20 | 深圳市汇朗科技有限公司 | 分表分页排序查询方法及装置 |
CN106227894B (zh) * | 2016-08-24 | 2019-11-26 | 中国农业银行股份有限公司 | 一种数据分页查询方法和装置 |
-
2017
- 2017-10-27 CN CN201711029511.6A patent/CN107992516A/zh active Pending
-
2018
- 2018-02-28 WO PCT/CN2018/077673 patent/WO2019080431A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020029207A1 (en) * | 2000-02-28 | 2002-03-07 | Hyperroll, Inc. | Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein |
CN101197876A (zh) * | 2006-12-06 | 2008-06-11 | 中兴通讯股份有限公司 | 一种对消息类业务数据进行多维分析的方法和系统 |
CN101251861A (zh) * | 2008-03-18 | 2008-08-27 | 北京锐安科技有限公司 | 一种海量数据加载和查询的方法 |
CN103678634A (zh) * | 2013-12-19 | 2014-03-26 | 北京锐安科技有限公司 | 一种提高J-Hi开源开发平台中数据查询速度的方法 |
CN105786808A (zh) * | 2014-12-15 | 2016-07-20 | 阿里巴巴集团控股有限公司 | 一种用于分布式执行关系型计算指令的方法与设备 |
Non-Patent Citations (1)
Title |
---|
KEVIN E.KLINE: "《SQL技术手册》", 30 July 2008, 东南大学出版社 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109857771A (zh) * | 2019-01-31 | 2019-06-07 | 平安科技(深圳)有限公司 | 具有排名的sql排列的获取方法、装置和计算机设备 |
CN112199407A (zh) * | 2020-10-12 | 2021-01-08 | 上海达梦数据库有限公司 | 一种数据分组排序方法、装置、设备及存储介质 |
CN112199407B (zh) * | 2020-10-12 | 2023-10-27 | 上海达梦数据库有限公司 | 一种数据分组排序方法、装置、设备及存储介质 |
CN113779061A (zh) * | 2021-02-04 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | Sql语句的处理方法、装置、介质及电子设备 |
CN113204602A (zh) * | 2021-05-07 | 2021-08-03 | 星环信息科技(上海)股份有限公司 | 数据处理方法、装置、设备及存储介质 |
CN113204602B (zh) * | 2021-05-07 | 2023-08-01 | 星环信息科技(上海)股份有限公司 | 数据处理方法、装置、设备及存储介质 |
CN113723696A (zh) * | 2021-09-07 | 2021-11-30 | 上海达梦数据库有限公司 | 一种排名分析函数处理方法、装置、电子设备及存储介质 |
CN113723696B (zh) * | 2021-09-07 | 2023-08-08 | 上海达梦数据库有限公司 | 一种排名分析函数处理方法、装置、电子设备及存储介质 |
CN114238377A (zh) * | 2021-12-17 | 2022-03-25 | 广州海量数据库技术有限公司 | OpenGauss中实现percentile_cont分析函数的方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2019080431A1 (zh) | 2019-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107992516A (zh) | 电子装置、数据查询的方法及存储介质 | |
CN108038135A (zh) | 电子装置、多表关联查询的方法及存储介质 | |
CN112800095B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN111506559B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN111797096A (zh) | 基于ElasticSearch的数据索引方法、装置、计算机设备及存储介质 | |
CN107870979A (zh) | 电子装置、提取数据表的数据的方法及存储介质 | |
CN103248677B (zh) | 互联网行为分析系统及其工作方法 | |
CN111813573B (zh) | 管理平台与机器人软件的通信方法及其相关设备 | |
CN108470045A (zh) | 电子装置、数据链式归档的方法及存储介质 | |
CN104750760A (zh) | 一种推荐应用软件的实现方法及装置 | |
CN109062936A (zh) | 一种数据查询方法、计算机可读存储介质及终端设备 | |
CN110009514A (zh) | 数据的提取方法、装置、终端及计算机可读存储介质 | |
CN111813517A (zh) | 任务队列的分配方法、装置、计算机设备及介质 | |
CN115145587A (zh) | 一种产品参数校验方法、装置、电子设备及存储介质 | |
CN108154024A (zh) | 一种数据检索方法、装置及电子设备 | |
CN109918277A (zh) | 电子装置、系统日志聚类分析结果的评价方法及存储介质 | |
CN110413610A (zh) | 提高业务数据报表导出效率的方法及系统、数据库服务器 | |
CN109120731B (zh) | 一种通用型通讯方法、系统及装置 | |
CN117391596A (zh) | 物料和工序匹配方法、装置、通信设备及存储介质 | |
CN109902098A (zh) | 相似案例查找和排序方法、服务器及计算机可读存储介质 | |
CN112667682A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN114265869A (zh) | 数据报文的转发方法及装置、存储介质及电子设备 | |
CN114595215A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111694859A (zh) | 业务类型数据的处理方法及系统 | |
CN108427663A (zh) | 电子装置、页面表格数据的处理方法及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180504 |