美文网首页
Access 查找表中重复字段

Access 查找表中重复字段

作者: snowpigppp | 来源:发表于2018-08-24 16:27 被阅读0次

在Access一张表中,姓名是有所重复的,但是由于重名人太多,无法确定所有重复姓名的人都是同一个人,因此我们增加了一个字段进行匹配:

即,对于表MRI记录,包含字段姓名,年龄,性别,地址,身份证号等,认为姓名一致,且年龄一致或地址一致或身份证号一致(选择多个字段是由于有些患者的部分字段无信息),则为同一个人。

具体的作法是首先用access自带查询向导中的SQL语句,选择表MRI记录中,姓名与年龄一致的所有记录,姓名与地址一致的所有记录及姓名与身份证号一致的所有记录,而后使用UNION进行合并操作(UNION操作会去除重复记录)。

Access SQL代码为:

SELECT *

FROM MRI记录

WHERE ((MRI记录.姓名) In

(SELECT [姓名] FROM [MRI记录] As Tmp GROUP BY 姓名,年龄 having count(*)>1 And [年龄] = [MRI记录].[年龄]));

union SELECT *

FROM MRI记录

WHERE ((MRI记录.姓名) In

(SELECT [姓名] FROM [MRI记录] As Tmp GROUP BY 姓名,身份证号 having count(*)>1 And [身份证号] = [MRI记录].[身份证号]));

union SELECT *

FROM MRI记录

WHERE ((MRI记录.姓名) In

(SELECT [姓名] FROM [MRI记录] As Tmp GROUP BY 姓名,地址 having count(*)>1 And [地址] = [MRI记录].[地址]));

缺点是该方法执行速度较慢(推测原因是使用了UNION操作去除重复),20,000多条数据大概需要五分钟以上查询完毕。

相关文章

  • Access 查找表中重复字段

    在Access一张表中,姓名是有所重复的,但是由于重名人太多,无法确定所有重复姓名的人都是同一个人,因此我们增加了...

  • 转载 SQL查询重复记录

    1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 2、删除表中多余的重复记录,重复记录...

  • SQL按重复数量查询重复记录

    单个字段(重复数量大于二的) 多个字段 查找表中多余的重复记录(多个字段),不包含rowid最小的记录

  • 【MySql】举几个栗子

    之前问到的一个面试题,做个记录 查找表中多余的重复记录,重复记录是根据单个字段(flag)来判断 查找表中多余的重...

  • 23 sql 查找表中多余的重复记录

    查找表中多余的重复记录,重复记录是根据单个字段(DocId)来判断 select * from TableName...

  • sql 查找重复字段

    查找表中多余的重复记录,重复记录是根据单个字段(DocId)来判断 select * from TableName...

  • oracle查询重复数据方法

    SQL重复记录查询 (一) 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 2、删除...

  • 一些sqlite语句

    1、查找表中多余的重复记录(多个字段)select * from test group by column1, c...

  • SQL记录

    查询一个表中某个字段的重复数据: 这是在表tt_smt_fixed_asset_add 中查找ASSET_numb...

  • 【mysql】删除重复记录并且只保留一条

    一、单个字段的操作 这是数据库中的表: 分组介绍: Select 重复字段 From 表 Group By 重复字...

网友评论

      本文标题:Access 查找表中重复字段

      本文链接:https://www.haomeiwen.com/subject/fgzbiftx.html