【发布时间】:2010-04-01 14:13:10
【问题描述】:
我认为我正在尝试在某些列上使用类似于 DISTINCT 的内容进行过滤,但在其他列上则不然。
我有这样的看法:
Name
LastName
Zip
Street1
HouseholdID (may not be unique because it may have multiple addresses -- think of it in the logical sense as grouping persons but not physical locations; If you lookup HouseholdID 4130, you may get two rows.. or more, because the person may have mutiple mailing locations)
City
State
我需要提取所有这些列,但要过滤 LastName、Zip 和 Street1。这是有趣的部分:过滤器是任意的——这意味着我不在乎哪个重复项消失了。这是针对邮寄类型的事情,除了在需要时查找特定的人(我不知道为什么)之外,不会出于任何其他原因使用其他信息。所以..给定其中一条记录,您可以轻松找出已删除的记录。
就目前而言,我的 Sql-Fu 失败了,我在 C# 中进行过滤,这非常慢,并且几乎是一个以空列表开头并在 if 中添加行的 foreach组合的姓氏、邮编和街道不在列表中。
我觉得我错过了我应该理解的 SQL 的一个简单/基本部分。
【问题讨论】:
-
您是否查看了记录的主键或唯一标识?
标签: sql-server-2005 tsql