处理数据库表的方法和设备的制造方法

文档序号:8282306阅读:119来源:国知局
处理数据库表的方法和设备的制造方法
【专利说明】处理数据库表的方法和设备 ?技术领域
[0001] 本发明涉及计算机技术,更具体地说,涉及处理数据库表的方法和设备。 ?【背景技术】
[0002] 数据库软件经常需要对数据库表进行多维处理。例如,考虑如下的SQL语句:
[0003]
【主权项】
1. 一种处理数据库表的方法,该方法包括: 接收对数据库表的至少两个列进行处理的多维处理指令,所述两个列中的一个是选择 列,另一个是排序列,所述多维处理指令根据所述选择列选择需要排序的多个候选行,并且 根据所述排序列对所述候选行进行排序; 基于W所述选择列为主列,W所述排序列为从列的索引,根据所述选择列选择所述索 引中的节点,其中各被选择的节点分别与从列值序列相关联,所述从列值序列按序记载与 该节点对应的排序列的值;和 对所述各从列值序列进行归并排序,从而得到对所述候选行的排序结果。
2. 如权利要求1所述的方法,其中对所述各从列值序列进行归并排序包括: 获取所述从列值序列的数目; 在所述从列值序列的数目小于归并阔值的情况下,对所述各从列值序列进行归并排 序。
3. 如权利要求2所述的方法,其中获取所述从列值序列的数目包括: 在对所述多维处理指令进行代码解析的阶段获取所述从列值序列的数目。
4. 如权利要求2所述的方法,其中获取所述从列值序列的数目包括: 通过运行时反馈机制来获得所述从列值序列的数目。
5. 如权利要求4所述的方法,其中通过运行时反馈机制来获得所述从列值序列的数目 包括: 通过遍历所述索引来获得所述从列值序列的数目。
6. -种处理数据库表的设备,该设备包括: 指令接收装置,配置为接收对数据库表的至少两个列进行处理的多维处理指令,所述 两个列中的一个是选择列,另一个是排序列,所述多维处理指令根据所述候选列选择需要 排序的多个候选行,并且根据所述排序列对所述候选行进行排序; 节点选择装置,配置为基于W所述选择列为主列,W所述排序列为从列的索引,根据所 述选择列选择所述索引中的节点,其中各被选择的节点分别与从列值序列相关联,所述从 列值序列按序记载与该节点对应的排序列的值;和 归并排序装置,配置为对所述各从列值序列进行归并排序,从而得到对所述候选行的 排序结果。
7. 如权利要求6所述的设备,其中所述归并排序装置包括: 配置为获取所述从列值序列的数目的模块; 配置为在所述从列值序列的数目小于归并阔值的情况下,对所述各从列值序列进行归 并排序的模块。
8. 如权利要求7所述的设备,其中配置为获取所述从列值序列的数目的模块包括: 配置为在对所述多维处理指令进行代码解析的阶段获取所述从列值序列的数目的模 块。
9. 如权利要求7所述的设备,其中配置为获取所述从列值序列的数目的模块包括: 配置为通过运行时反馈机制来获得所述从列值序列的数目的模块。
10. 如权利要求9所述的设备,其中配置为通过运行时反馈机制来获得所述从列值序 列的数目的模块包括: 配置为通过遍历所述索引来获得所述从列值序列的数目的模块。
【专利摘要】本发明实施例提供了用于处理数据库表的方法和设备。所述方法包括:该方法包括:接收对数据库表的至少两个列进行处理的多维处理指令,所述两个列中的一个是选择列,另一个是排序列,所述多维处理指令根据所述候选列选择需要排序的多个候选行,并且根据所述排序列对所述候选行进行排序;如果存在以所述选择列为主列,以所述排序列为从列的索引,则根据所述选择列选择所述索引中的节点,其中各被选择的节点分别与从列值序列相关联,所述从列值序列按序记载与该节点对应的排序列的值;和对所述各从列值序列进行归并排序,从而得到对所述候选行的排序结果。采用根据本发明实施例的方案,可以提高对数据库表的处理效率。
【IPC分类】G06F17-30
【公开号】CN104598485
【申请号】CN201310535061
【发明人】李硕, 杨新颖, 崔凯锋
【申请人】国际商业机器公司
【公开日】2015年5月6日
【申请日】2013年11月1日
【公告号】US20150127666
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1