[发明专利]数据查询的方法、装置及存储介质在审
| 申请号: | 202210925540.5 | 申请日: | 2022-08-03 |
| 公开(公告)号: | CN115114341A | 公开(公告)日: | 2022-09-27 |
| 发明(设计)人: | 刘涛;马尧 | 申请(专利权)人: | 西安葡萄城软件有限公司 |
| 主分类号: | G06F16/2457 | 分类号: | G06F16/2457;G06F16/2453;G06F16/2452;G06F16/248;G06F16/22;G06F16/242 |
| 代理公司: | 西安毅联专利代理有限公司 61225 | 代理人: | 杨燕珠 |
| 地址: | 710000 陕西省西安市高新*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 查询 方法 装置 存储 介质 | ||
1.一种数据查询方法,其特征在于,包括:
获取查询语句和结构化文本数据;
将所述查询语句解析为抽象语法树;
将所述结构化文本数据作为参数附着于所述抽象语法树;
对所述抽象语法树进行编译,生成高阶函数;
执行所述高阶函数,生成行级数据访问句柄;
使用所述行级数据访问句柄访问所述结构化文本数据,获取查询结果,并返回所述查询结果的表状数据。
2.根据权利要求1所述的方法,其特征在于,所述将所述查询语句解析为抽象语法树,包括:
根据预设解析规则将所述查询语句转换为标记列表;
遍历所述标记列表,并生成所述抽象语法树;
对所述抽象语法树进行逻辑校验,若校验成功将所述语法树进行封装;若校验不成功则重新进行解析。
3.根据权利要求1所述的方法,其特征在于,所述将所述结构化文本数据作为参数附着于所述抽象语法树,包括:对所述语法树的参数单元进行赋值,所述参数单元的值为所述结构化文本数据。
4.根据权利要求1所述的方法,其特征在于,还包括:优化所述抽象语法树。
5.根据权利要求4所述的方法,其特征在于,所述优化所述抽象语法树,包括:
加载等价重写优化器、条件简化优化器和连接消除优化器,分别对所述抽象语法树进行查询条件重写、查询语句精简以及嵌套连接查询分离;
遍历上述三种优化器,对优化所述抽象语法树,并对所述抽象语法树进行修改;
对修改后的所述抽象语法树进行逻辑校验,若校验成功将所述语法树进行封装;若校验不成功则重新进行解析。
6.根据权利要求1所述的方法,其特征在于,所述查询语句包括SQL语句和/或NOSQL语句。
7.根据权利要求1所述的方法,其特征在于,所述结构化文本数据包括JSON文本数据。
8.一种数据查询装置,其特征在于,包括:
输入模块,用于获取查询语句和结构化文本数据;
语法树构建模块,用于将所述查询语句解析为抽象语法树;
参数引用单元,用于将所述结构化文本数据作为参数附着于所述抽象语法树;
函数生成单元,用于对所述抽象语法树进行编译,生成高阶函数;
句柄生成单元,用于执行所述高阶函数,生成行级数据访问句柄;
结果返回单元,用于使用所述句柄进行数据格式化,返回表状数据。
9.一种数据查询服务器,其特征在于,包括存储器和处理器;
所述存储器用于存储计算机可执行指令;
所述处理器用于执行所述计算机可执行指令,以实现权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有可执行指令,计算机执行所述可执行指令时能够实现如权利要求1-7任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安葡萄城软件有限公司,未经西安葡萄城软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210925540.5/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





