我已经打了两天头,我终于承认我需要帮助完成这个看似简单的任务。
我试图找到一种方法来在一个表格中生成可能重复的帐户列表。字段类似于AccountNumber
,FirstName
,LastName
,DOB
,SSN
,Address
,City
,{{1} },State
。
我需要找到一种查询数据库的方法,并查找具有不同Zip
但类似AccountNumbers
/ names
/ DOB
且可能是同一个人的帐户。
非常感谢任何帮助。 谢谢!
答案 0 :(得分:2)
select distinct t1.AccountNumber
from table t1
join table t2 on t2.Name = t1.Name and t2.DoB = t1.DoB
and t2.AccountNumber <> t1.AccountNumber
答案 1 :(得分:0)
看看使用递归选择。这是一篇关于它的文章。 http://technet.microsoft.com/en-us/library/ms186243(v=sql.105).aspx
基本上,它创建了一个临时表,允许您在不直接重新查询数据库的情况下执行操作。这使您可以更有效地执行多个子选择。
您的查询最终会显示如下内容。
帐户为(从表中选择a,b,c)
选择a,b,c 从表tbl 存在的地方(从账户中选择1,其中act.a如'%'+ tbl.a +'%')......
有关如何检查列是否与另一列相关的更多信息,请查看Compare Columns Where One is Similar to Part of Another
答案 2 :(得分:0)
我从我们的软件供应商那里得到了一个查询,它完全按照我的要求去做。他们的解决方案是上述两个建议的组合。它创建一个临时表来放置具有多个firstname lastname匹配的帐户,然后通过检查匹配的地址,州,城市来评估它们是重复的可能性。它还注意到最后一次使用每个帐户。
我不完全理解语法,但没关系,它可以完成工作。
感谢您的帮助!