[发明专利]一种数据操作的执行方法、装置、设备和存储介质有效
| 申请号: | 201910752923.5 | 申请日: | 2019-08-15 |
| 公开(公告)号: | CN110471935B | 公开(公告)日: | 2022-02-18 |
| 发明(设计)人: | 张钦;刘志勇;韩朱忠 | 申请(专利权)人: | 上海达梦数据库有限公司 |
| 主分类号: | G06F16/242 | 分类号: | G06F16/242 |
| 代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
| 地址: | 201203 上海*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据 操作 执行 方法 装置 设备 存储 介质 | ||
本发明公开了一种数据操作的执行方法、装置、设备和存储介质。其中,该方法包括:获取用户输入的SQL操作语句;如果SQL操作语句中的原始内连接为原始分组的下一级操作且原始分组对应的集函数满足预设条件时,则组合原始内连接指定的表集合中除集函数涉及的核心表之外的其他表;针对每一组合结果,根据该组合结果中的其他表和核心表在所述SQL操作语句中的内连接条件构造新的内连接和分组,并根据新的内连接和分组改造原始内连接和原始分组,得到对应的操作执行计划;采用执行代价最小的操作执行计划,执行SQL操作语句。本发明提供的技术方案,减少内连接得到的中间结果集中的数据量,降低数据操作耗费的执行代价,提高数据操作的执行效率。
技术领域
本发明实施例涉及数据库处理领域,尤其涉及一种数据操作的执行方法、装置、设备和存储介质。
背景技术
在结构化查询语言(Structured Query Language,SQL)数据库中,SQL是一种为数据库建立的操作命令集,针对数据表的内连接和分组操作是其提供的基本功能。其中,内连接表示在关联的多张数据表中查找出符合预设条件的共有记录;分组操作通常与集函数配合使用,例如,分组统计和分组排序等。例如,表A与表B内连接的实现语句可以为:selectA.A_name,B.B_name from A,B where A.A_ID=B.B_ID;表A分组统计的实现语句为:select count(A.A_ID)FROM A GROUP BY A.A_ID;其中count(A.A_ID)为一种求表A中A_ID相同的行记录个数的集函数。
在对多张关联的数据表同时进行内连接和分组操作时,如果分组直接作为内连接的上一级操作,如select count(A.A_ID)FROM A,B where A.A_ID=B.B_ID GROUP BYB.B_ID,由于分组的操作符与内连接的操作符之间是相互独立的,因此通常先对多张关联的数据表依次根据预设的关联条件进行内连接操作,并对内连接后满足关联条件的最终数据表进行分组操作,如果内连接关联的数据表较多,此时每次仅控制两张数据表进行内连接,使得内连接得到的中间数据集中的数据量较大,降低了执行效率。
发明内容
本发明实施例提供了一种数据操作的执行方法、装置、设备和存储介质,降低数据操作耗费的执行代价,提高操作的执行效率。
第一方面,本发明实施例提供了一种数据操作的执行方法,该方法包括:
获取用户输入的SQL操作语句;
如果所述SQL操作语句中的原始内连接为原始分组的下一级操作且所述原始分组对应的集函数满足预设条件时,则组合所述原始内连接指定的表集合中除所述集函数涉及的核心表之外的其他表;
针对每一组合结果,根据该组合结果中的其他表和所述核心表在所述SQL操作语句中的内连接条件构造新的内连接和分组,并根据新的内连接和分组改造所述原始内连接和所述原始分组,得到对应的操作执行计划;
采用执行代价最小的操作执行计划,执行所述SQL操作语句。
第二方面,本发明实施例提供了一种数据操作的执行装置,该装置包括:
操作语句获取模块,用于获取用户输入的SQL操作语句;
表组合模块,用于如果所述SQL操作语句中的原始内连接为原始分组的下一级操作且所述原始分组对应的集函数满足预设条件时,则组合所述原始内连接指定的表集合中除所述集函数涉及的核心表之外的其他表;
执行计划生成模块,用于针对每一组合结果,根据该组合结果中的其他表和所述核心表在所述SQL操作语句中的内连接条件构造新的内连接和分组,并根据新的内连接和分组改造所述原始内连接和所述原始分组,得到对应的操作执行计划;
操作执行模块,用于采用执行代价最小的操作执行计划,执行所述SQL操作语句。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910752923.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





