【技术实现步骤摘要】
数据匹配方法、装置、计算机设备和存储介质
本申请涉及人工智能
,具体涉及一种数据匹配方法、装置、计算机设备和存储介质。
技术介绍
在Excel中对不同数据进行数据匹配是当下比较常见的业务场景。当具有将待检测数据与目标数据集合中的数据进行数据匹配的需求时,现有的数据匹配方式通常是由业务人员使用Excel自带的vlookup等函数进行数据匹配,这需要业务人员有一定的Excel函数知识,并自行进行函数编写,对业务人员有一定的技能要求。另外,这种基于函数的数据匹配方式的逻辑通常是将待检测数据与目标数据集合中的每一个数据进行逐一循环检查,以判别在目标数据集合中是否存在与该待检测数据匹配的数据。然而当需要进行数据匹配的目标数据集合的数量级较大时,例如超过十万数量级时,在Excel中采用基于函数的数据匹配方式需要花费较长的时间来进行数据匹配,处理效率低下。
技术实现思路
本申请的主要目的为提供一种数据匹配方法、装置、计算机设备和存储介质,旨在解决现有的在Excel中采用基于函数的数据匹配方式需要花费较长的时间来进行数据匹配,处理效率低下的技术问题。本申请提出一种数据匹配方法,所述方法包括步骤:获取导入至Excel文档中的待检测数据以及目标数据集合;判断是否接收到用户触发的数据匹配指令;若接收到用户触发的数据匹配指令,则读取预设的VBA代码,并基于所述数据匹配指令,生成与所述待检测数据及所述目标数据集合对应的VBA任务;基于所述VBA任务的执行逻辑,将所述待检测数据与 ...
【技术保护点】
1.一种数据匹配方法,其特征在于,包括:/n获取导入至Excel文档中的待检测数据以及目标数据集合;/n判断是否接收到用户触发的数据匹配指令;/n若接收到用户触发的数据匹配指令,则读取预设的VBA代码,并基于所述数据匹配指令,生成与所述待检测数据及所述目标数据集合对应的VBA任务;/n基于所述VBA任务的执行逻辑,将所述待检测数据与所述目标数据集合拷贝至内存中;/n基于预设的哈希算法,分别计算处于内存中的所述目标数据集合包含的每一个目标数据的第一哈希值,以及计算处于内存中的所述待检测数据的指定哈希值;/n基于所述第一哈希值与所述目标数据,生成与所述目标数据集合对应的哈希链表;/n使用所述哈希链表对所述指定哈希值进行数据匹配处理,生成与所述待检测数据对应的数据匹配结果。/n
【技术特征摘要】
1.一种数据匹配方法,其特征在于,包括:
获取导入至Excel文档中的待检测数据以及目标数据集合;
判断是否接收到用户触发的数据匹配指令;
若接收到用户触发的数据匹配指令,则读取预设的VBA代码,并基于所述数据匹配指令,生成与所述待检测数据及所述目标数据集合对应的VBA任务;
基于所述VBA任务的执行逻辑,将所述待检测数据与所述目标数据集合拷贝至内存中;
基于预设的哈希算法,分别计算处于内存中的所述目标数据集合包含的每一个目标数据的第一哈希值,以及计算处于内存中的所述待检测数据的指定哈希值;
基于所述第一哈希值与所述目标数据,生成与所述目标数据集合对应的哈希链表;
使用所述哈希链表对所述指定哈希值进行数据匹配处理,生成与所述待检测数据对应的数据匹配结果。
2.根据权利要求1所述的数据匹配方法,其特征在于,所述基于所述第一哈希值与所述目标数据,生成与所述目标数据集合对应的哈希链表的步骤,包括:
获取所述目标数据集合中包含的每一个目标数据的第一哈希值;
对所有所述第一哈希值进行数值大小比较处理,筛选出在所有所述第一哈希值中数值最大的第二哈希值;
将所述第二哈希值对应的数值作为长度值;
根据各所述第一哈希值,确定出与各所述目标数据对应的放置位置信息;
基于所述放置位置信息、所述目标数据、以及所述长度值构建对应的哈希链表,其中,所述哈希链表内包含与所述长度值的数量相同的多个数组,每个所述数组包括链表,链表内存储有与数组匹配的放置位置信息所对应的目标数据。
3.根据权利要求1所述的数据匹配方法,其特征在于,所述使用所述哈希链表对所述指定哈希值进行数据匹配处理,生成与所述待检测数据对应的数据匹配结果的步骤,包括:
基于预设的哈希值与放置位置的对应关系,确定出所述指定哈希值在所述哈希链表中的指定放置位置信息;
根据所述指定放置位置信息,从所述哈希链表中查询出与所述指定放置位置信息对应的指定数组;
判断所述指定数组内是否存储有数据;
若所述指定数组内存储有数据,则判断所述指定数组中存储的所有数据中是否存在与所述待检测数据相匹配的指定数据;
若所述指定数组中存储的所有数据中存在所述指定数据,则生成所述目标数据集合中存在与所述待检测数据相匹配的数据的第一匹配结果;
若所述指定数组中存储的所有数据中不存在所述指定数据,则生成所述目标数据集合中不存在与所述待检测数据匹配的数据的第二匹配结果。
4.根据权利要求3所述的数据匹配方法,其特征在于,所述判断所述指定数组中存储的所有数据中是否存在与所述待检测数据相匹配的指定数据的步骤,包括:
判断所述指定数据中包含的数据的个数是否为1;
若所述指定数据中包含的数据的个数不为1,则基于并行比较指令比较所述待检测数据是否与所述指定数组中的任意一个数据相同;
若所述待检测数据与所述指定数组中的任意一个数据相同,则判定所述指定数组中包含的所有数据中存在与所述待检测数据相匹配的指定数据;
若所述待检测数据与所述指定数组中的任意一个数据均不相同,则判定所述指定数组中包含的所有数据中不存在与所述待检测数据相匹配的指定数据。
5.根据权利要求1所述的数据匹配方法,其特征在于,...
【专利技术属性】
技术研发人员:余磊,
申请(专利权)人:平安普惠企业管理有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。