The application provides a database query method, device and electronic device, including: determining the target data table where the target query field in the database query instruction is located after receiving the database query instruction; constructing a directed graph of the data table according to the target data table; and selecting a target data table from the target data table that constructs the directed graph of the data table as a target data table. Source data table; based on the directed graph of the data table, calculate the shortest distance from the source data table to other target data tables that construct the directed graph of the data table, and determine the shortest path corresponding to the shortest distance; connect the data tables of the shortest path and query them based on the result of the connection. The application technical scheme can save processing resources and improve query speed in database query.
【技术实现步骤摘要】
数据库查询方法、装置和电子设备
本申请涉及数据库
,尤其涉及一种数据库查询方法、装置和电子设备。
技术介绍
数据库是按照数据结构来组织、存储和管理数据的仓库。目前,在数据库的组织与管理中,可以生成通用的数据表,用户选择想要查询的字段时,基于该数据库表可以查找到对应的数据。若用户想要查询的字段分布在多个数据表中,可以将数据表进行连接,基于连接的数据表为用户查找对应的数据。然而,随着数据表的增多,数据表的连接会耗费大量的时间和处理资源。
技术实现思路
有鉴于此,本申请提供一种数据库查询方法、装置和电子设备,以解决相关技术中耗费大量的时间和处理资源的问题。具体地,本申请是通过如下技术方案实现的:第一方面,本申请提供一种数据库查询方法,所述方法包括:在接收到数据库查询指令后,确定所述数据库查询指令中的目标查询字段所在的目标数据表;根据所述目标数据表构建数据表有向图;从构建所述数据表有向图的所述目标数据表中选取一个目标数据表作为源数据表;基于所述数据表有向图,计算所述源数据表到构建所述数据表有向图的其他目标数据表的最短距离,并确定所述最短距离对应的最短路径;将所述最短路径途经的数据表进行连接,并基于连接结果进行查询。第二方面,本申请提供一种数据库查询装置,其特征在于,所述装置包括:确定单元,用于在接收到数据库查询指令后,确定所述数据库查询指令中的目标查询字段所在的目标数据表;构建单元,用于根据所述目标数据表构建数据表有向图;选取单元,用于从构建所述数据表有向图的所述目标数据表中选取一个目标数据表作为源数据表;计算单元,用于基于所述数据表有向图,计算所述源数据表到构 ...
【技术保护点】
1.一种数据库查询方法,其特征在于,所述方法包括:在接收到数据库查询指令后,确定所述数据库查询指令中的目标查询字段所在的目标数据表;根据所述目标数据表构建数据表有向图;从构建所述数据表有向图的所述目标数据表中选取一个目标数据表作为源数据表;基于所述数据表有向图,计算所述源数据表到构建所述数据表有向图的其他目标数据表的最短距离,并确定所述最短距离对应的最短路径;将所述最短路径途经的数据表进行连接,并基于连接结果进行查询。
【技术特征摘要】
1.一种数据库查询方法,其特征在于,所述方法包括:在接收到数据库查询指令后,确定所述数据库查询指令中的目标查询字段所在的目标数据表;根据所述目标数据表构建数据表有向图;从构建所述数据表有向图的所述目标数据表中选取一个目标数据表作为源数据表;基于所述数据表有向图,计算所述源数据表到构建所述数据表有向图的其他目标数据表的最短距离,并确定所述最短距离对应的最短路径;将所述最短路径途经的数据表进行连接,并基于连接结果进行查询。2.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据表构建数据表有向图,包括:对数据表进行遍历,针对遍历到的第一数据表,若所述第一数据表与第二数据表具有公共字段,则建立第一数据表到第二数据表的路径;若所述第一数据表为目标数据表,则将所述第一数据表到所述第二数据表的路径权重设置为第一权重;若所述第一数据表为非目标数据表,则将所述第一数据表到所述第二数据表的路径权重设置为第二权重;所述第二权重大于所述第一权重。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:若存在所述源数据表不可达的目标数据表,则对所有数据表进行连接,并基于连接结果进行查询。4.根据权利要求1所述的方法,其特征在于,所述从构建所述数据表有向图的所述目标数据表中选取一个目标数据表作为源数据表,包括:从构建所述数据包有向图的所述目标数据表中随机选取一个目标数据表作为源数据表。5.根据权利要求1所述的方法,其特征在于,所述将所述最短路径途经的数据表进行连接,包括:遍历每条最短路径,针对遍历到的最短路径,依次判断该最短路径途经的数据表是否已加入的连接集合;所述连接集合初始为空;若所述数据表未加入连接集合,则将所述数据表加入到所述连接集合中;在遍历结束后,将所述连接集合中的数据表进行连接。6.一种数据库查询装置,其特征在于,所述装置包括:确定单元,用于在接收到数据库查询指令后,确定所述数据库查询指令中的目标查询字段所在的目标数据表;构建单元,用于根据所述目标数据表构建数据表有向图;选取单元,用于从构建所述数据表有向图的所述目标数据表中选取一个目标数据表作为源数据表;计算单元,用于基于所述数据表有向图,计算所述源数据表到构建所述数据表有向图的其他目标数据表的最短距...
【专利技术属性】
技术研发人员:李思旭,万祥,李佩,杨帆,
申请(专利权)人:北京嘀嘀无限科技发展有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。