全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210730534.4 (22)申请日 2022.06.24 (71)申请人 北京小米移动软件 有限公司 地址 100085 北京市海淀区西二 旗中路33 号院6号楼8层018号 申请人 北京小米松果电子有限公司 (72)发明人 何涵 商金岩  (74)专利代理 机构 北京法胜知识产权代理有限 公司 11922 专利代理师 石茵汀 (51)Int.Cl. G06F 16/242(2019.01) G06F 16/2453(2019.01) G06F 16/2455(2019.01) (54)发明名称 数据库查询方法、 装置、 电子设备及存储介 质 (57)摘要 本公开提出了数据库查询方法、 装置、 电子 设备及存储介质, 涉及数据处理技术领域。 方案 为: 获取基于用户操作所生成的查询条件信息; 将查询条件信息中每个目标属性转换成查询字 段, 每个目标属性的属性值转换为目标属性对应 的查询字段的字段值, 得到多个查询字段和多个 查询字段对应的字段值; 根据关联关系, 将多个 查询字段及多个所述查询字段对应的字段值填 充到后端表达式模板, 以得到查询条件信息的后 端表达式; 根据后端表达式的语法树, 生成查询 语句, 以采用查询语句查询数据库, 由此, 将查询 条件信息与后端表达式解耦, 避免了前端的查询 条件信息的格式改变导致后端无法进行数据库 查询的情况 出现, 改善 了用户体验。 权利要求书3页 说明书13页 附图9页 CN 115062046 A 2022.09.16 CN 115062046 A 1.一种数据库查询方法, 其特 征在于, 包括: 获取基于用户操作所生成的查询条件信息; 其中, 所述查询条件信息包括多个目标属 性的标识、 每 个所述目标属性的属性 值和多个所述目标属性之间的关联关系; 将每个所述目标属性转换成查询字段, 每个所述目标属性的属性值转换为所述目标属 性对应的查询字段的字段值, 得到多个所述 查询字段和多个所述 查询字段对应的字段值; 根据所述关联关系, 将所述多个查询字段及多个所述查询字段对应的字段值填充到后 端表达式模板, 以得到所述 查询条件信息的后端表达式; 根据所述后端表达式的语法树, 生成查询语句, 以采用所述 查询语句查询数据库。 2.根据权利要求1所述的方法, 其特征在于, 所述根据所述关联关系, 将所述多个查询 字段及多个所述查询字段对应的字段值填充到后端表达式模板, 以得到所述查询条件信息 的后端表达式, 包括: 将所述多个查询字段及所述多个查询字段对应的字段值, 分别填充到所述后端表达式 模板, 以得到多个第一层 级表达式; 其中, 每个所述第一层级表达式填充有一个所述查询字 段以及所述 一个查询字段对应的字段值; 根据所述关联关系, 生成第 二层级表达 式, 以及根据具有所述关联关系的查询字段, 确 定作为所述第二层级表达式子层的第一层级表达式; 将所述第二层级表达式, 与作为所述第二层级表达式子层的第一层级表达式组合, 以 得到所述 查询条件信息的后端表达式。 3.根据权利要求2所述的方法, 其特征在于, 所述根据所述关联关系, 生成第二层级表 达式, 包括: 根据所述关联关系中所述多个查询字段之间的至少一个运算符, 生成用于指示所述至 少一个运 算符的第二层级表达式; 根据所述关联关系中所述至少一个运算符执行的先后 顺序, 确定所述第 二层级表达式 之间的层级关系。 4.根据权利要求3所述的方法, 其特 征在于, 所述方法还 包括: 将所述后端表达式, 解析为所述语法树; 其中, 所述语法树中的叶子节点用于指示所述后端表达式中的第一层级表达式, 所述 语法树中的非叶子节 点用于指示所述后端表达式中的第二层级表达式, 所述语法树的节点 父子关系是根据所述第二层级表达式之 间的层级关系, 以及所述第一层级表达式与所述第 二层级表达式之间的层级关系确定的。 5.根据权利要求1 ‑4任一项所述的方法, 其特征在于, 所述根据 所述后端表达 式的语法 树, 生成查询语句, 包括: 根据所述数据库的类型, 调用适用于所述类型的代理, 以使所述代理根据所述类型对 应的转换 策略, 将所述语法树中每 个节点转换为查询子语句; 根据每个所述节点所转换的查询子语句, 生成查询语句。 6.根据权利要求1 ‑4任一项所述的方法, 其特征在于, 所述获取基于用户操作所生成的 查询条件信息, 包括: 接收前端页面响应于用户操作所发送的前端表达式; 其中, 所述前端表达式携带有所述 查询条件信息 。权 利 要 求 书 1/3 页 2 CN 115062046 A 27.一种数据库查询装置, 其特 征在于, 包括: 获取模块, 用于获取基于用户操作所生成的查询条件信 息; 其中, 所述查询条件信 息包 括多个目标属性的标识、 每个所述目标属性的属性值和多个所述目标属性之间的关联关 系; 转换模块, 用于将每个所述目标属性转换成查询字段, 每个所述目标属性的属性值转 换为所述目标属性对应的查询字段的字段值, 得到多个所述查询字段和多个所述查询字段 对应的字段值; 填充模块, 用于根据所述关联关系, 将所述多个查询字段及多个所述查询字段对应的 字段值填充到后端表达式模板, 以得到所述 查询条件信息的后端表达式; 生成模块, 用于根据 所述后端表达 式的语法树, 生成查询语句, 以采用所述查询语句查 询数据库。 8.根据权利要求7 所述的装置, 其特 征在于, 所述 填充模块, 具体用于: 将所述多个查询字段及所述多个查询字段对应的字段值, 填充到所述后端表达式模 板, 以得到多个第一层级表达式; 其中, 每个所述第一层级表达式填充有一个所述查询字段 以及所述 一个查询字段对应的字段值; 根据所述关联关系, 生成第 二层级表达 式, 以及根据具有所述关联关系的查询字段, 确 定作为所述第二层级表达式子层的第一层级表达式; 将所述第二层级表达式, 与作为所述第二层级表达式子层的第一层级表达式组合, 以 得到所述 查询条件信息的后端表达式。 9.根据权利要求8所述的装置, 其特 征在于, 所述 填充模块, 还用于: 根据所述关联关系中所述多个查询字段之间的至少一个运算符, 生成用于指示所述至 少一个运 算符的第二层级表达式; 根据所述关联关系中所述至少一个运算符执行的先后 顺序, 确定所述第 二层级表达式 之间的层级关系。 10.根据权利要求9所述的装置, 其特 征在于, 所述装置还 包括: 解析模块, 用于将所述后端表达式, 解析为所述语法树; 其中, 所述语法树中的叶子节点用于指示所述后端表达式中的第一层级表达式, 所述 语法树中的非叶子节 点用于指示所述后端表达式中的第二层级表达式, 所述语法树的节点 父子关系是根据所述第二层级表达式之 间的层级关系, 以及所述第一层级表达式与所述第 二层级表达式之间的层级关系确定的。 11.根据权利要求7 ‑10任一项所述的装置, 其特 征在于, 所述 生成模块, 具体用于: 根据所述数据库的类型, 调用适用于所述类型的代理, 以使所述代理根据所述类型对 应的转换 策略, 将所述语法树中每 个节点转换为查询子语句; 根据每个所述节点所转换的查询子语句, 生成查询语句。 12.根据权利要求7 ‑10任一项所述的装置, 其特 征在于, 所述获取模块, 具体用于: 接收前端页面响应于用户操作所发送的前端表达式; 其中, 所述前端表达式携带有所述 查询条件信息 。 13.一种电子设备, 其特 征在于, 包括: 至少一个处 理器; 以及权 利 要 求 书 2/3 页 3 CN 115062046 A 3

.PDF文档 专利 数据库查询方法、装置、电子设备及存储介质

文档预览
中文文档 26 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共26页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 数据库查询方法、装置、电子设备及存储介质 第 1 页 专利 数据库查询方法、装置、电子设备及存储介质 第 2 页 专利 数据库查询方法、装置、电子设备及存储介质 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 00:15:02上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。